Touch sensitive keyboard

ABSTRACT

Disclosed are keyboards and keyboard switches sensitive to touch, including, hover and pressure. The keyboard switches have transmit and receive antennae that are spaced apart such that no portion of the transmit antenna touches any portion of the receive antenna. The keyboard switches are arranged in logical rows and logical columns such that each of the keyboard switches is associated with one row and one column. Signal emitters are conductively coupled to the transmit antennae for each of the keyboard switches associated with each of the rows, and each of the signal emitters are adapted to cause each of the transmit antennae to transmit one or more source signals. Receivers are coupled to the receive antennae for each of the keyboard switches associated with each of the columns, and each of the receivers are adapted to capture a frame of signals present on the coupled receive antennae. A signal processor adapted to determine a measurement from each frame, corresponding to an amount of the source signals present on the receive antennae during a time the corresponding frame was received. The signal processor further adapted to determine a keyboard switch touch state from a range of touch states based at least in part on the corresponding measurement.

This application includes material which is subject to copyrightprotection. The copyright owner has no objection to the facsimilereproduction by anyone of the patent disclosure, as it appears in thePatent and Trademark Office files or records, but otherwise reserves allcopyright rights whatsoever.

FIELD

The disclosed systems relate in general to the field of user input, andin particular to keyboards and keyboard switches sensitive to touch,including, hover and pressure.

BACKGROUND

Known methods generally have the drawback of relying on only contactswithin the key to determine when a key has been depressed. The ability,as disclosed herein, to sense hover, contact and key depressinformation—and to have information available to understand a user'sgestures and interactions—introduces myriad possibilities forinteracting with touch devices.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, features, and advantages of thedisclosure will be apparent from the following more particulardescription of embodiments as illustrated in the accompanying drawings,in which reference characters refer to the same parts throughout thevarious views. The drawings are not necessarily to scale, emphasisinstead being placed upon illustrating principles of the disclosedembodiments.

FIG. 1A shows a perspective view of an exemplary embodiment of akeyboard switch for use with a traditional-style keyboard.

FIG. 1B shows a perspective view of the exemplary keyboard switchwithout a key cover.

FIG. 1C shows a left side elevational view of the keyboard switch.

FIG. 1D shows a cross-sectional, right side view of the keyboard switch.

FIGS. 2A and 2B show exemplary transmission and reception layers of akeyboard using the exemplary keyboard switch shown in FIG. 1.

FIGS. 3A and 3B show another exemplary embodiment of a keyboard switch.

FIGS. 4A and 4B show yet another exemplary embodiment of the keyboardswitch.

FIG. 5 shows a further exemplary embodiment of the keyboard switch.

FIG. 6 shows a still further exemplary embodiment of the keyboardswitch.

FIG. 7 shows an exemplary keyboard with a user's hands positioned inproximity thereto, and an illustration of that keyboard with a computergenerated heat map superimposed on the illustrated keyboard tocorrespond to the positioning and proximity of the user's hands with theexemplary keyboard.

FIG. 8 shows another view of the exemplary keyboard with a user's handsrepositioned in proximity thereto, and an illustration of that keyboardhaving an illustration of a computer generated heat map superimposedthereon.

FIG. 9 is an illustration showing a hybrid of a user's view andreal-world view of a featured keyboard.

FIG. 10 is an illustration showing a hybrid of a user's view andreal-world view of a feature-sparse keyboard.

FIG. 11 shows an exemplary embodiment of a featured keyboard.

FIG. 12A shows an illustrative sensor range of a featured keyboard.

FIG. 12B shows an example of a heat map of the user's fingers and handswithin the sensor range on a featured keyboard.

FIG. 12C shows an example of a user's fingers, hands, and wrists, andvisual context, being recreated on a keyboard in virtual or augmentedreality.

FIG. 13 is an illustration showing a hybrid of a user's view andreal-world view of a keyboard displaying floating tool-tips in theuser's virtual or augmented reality view.

DETAILED DESCRIPTION

This application relates to user interfaces such as the fast multi-touchsensors and other interfaces disclosed in U.S. patent application Ser.No. 15/056,805, filed Feb. 29, 2016 entitled “Alterable Ground Plane forTouch Surfaces” and U.S. patent application Ser. No. 14/490,363 filedSep. 18, 2014 entitled “Systems and Methods for Providing Response toUser Input Using Information About State Changes and Predicting FutureUser Input.” The entire disclosures of those applications areincorporated herein by reference.

In various embodiments, the present disclosure is directed to keyboardssensitive to hover, contact and pressure and their applications inreal-world, virtual reality, and augmented reality settings. It will beunderstood by one of ordinary skill in the art that the disclosuresherein apply generally to all types of keyboards, including but notlimited to membrane keyboards, dome-switch keyboards, scissor-switchkeyboards, capacitive keyboards, mechanical-switch keyboards,buckling-spring keyboards, hall-effect keyboards, laser projectionkeyboard, roll-up keyboards, and optical keyboard technology.

Throughout this disclosure, the terms “hover”, “touch”, “touches,”“contact,” “contacts,” “pressure,” “pressures” or other descriptors maybe used to describe events or periods of time in which a user's finger,a stylus, an object or a body part is detected by the sensor. In someembodiments, and as generally denoted by the word “contact”, thesedetections occur when the user is in physical contact with a sensor, ora device in which it is embodied. In other embodiments, and as generallyreferred to by the term “hover”, the sensor may be tuned to allow thedetection of “touches” that are hovering at a distance above the touchsurface or otherwise separated from the touch sensitive device. As usedherein, “touch surface” includes a keyboard or key; however, as isreadily understood, the touch surface may not have actual keys orfeatures, and could be a generally feature-sparse surface. The use oflanguage within this description that implies reliance upon sensedphysical contact should not be taken to mean that the techniquesdescribed apply only to those embodiments; indeed, generally, what isdescribed herein applies equally to “contact” and “hover”, each of whichbeing a “touch”. More generally, as used herein, the term “touch” refersto an act that can be detected by the types of sensors disclosed herein,thus, as used herein the term “hover” is one type of “touch” in thesense that “touch” is intended herein. “Pressure” refers to the pressureof “contact”, i.e., a force with which a user presses their fingers orhand against the key or other surface. The amount of “pressure” issimilarly a measure of “touch”. It should also be noted that a depressedkey is a further type of “touch”, thus, generally, as described herein,“touch” refers to the states of “hover”, “contact” and a fully depressedkey, whereas a lack of “touch” is generally identified by signals beingbelow a threshold for accurate measurement by the sensor.

As used herein, and especially within the claims, ordinal terms such asfirst and second are not intended, in and of themselves, to implysequence, time or uniqueness, but rather, are used to distinguish oneclaimed construct from another. In some uses where the context dictates,these terms may imply that the first and second are unique. For example,where an event occurs at a first time, and another event occurs at asecond time, there is no intended implication that the first time occursbefore the second time. However, where the further limitation that thesecond time is after the first time is presented in the claim, thecontext would require reading the first time and the second time to beunique times. Similarly, where the context so dictates or permits,ordinal terms are intended to be broadly construed so that the twoidentified claim constructs can be of the same characteristic or ofdifferent characteristic. Thus, for example, a first and a secondfrequency, absent further limitation, could be the same frequency—e.g.,the first frequency being 10 Mhz and the second frequency being 10 Mhz;or could be different frequencies—e.g., the first frequency being 10 Mhzand the second frequency being 11 Mhz. Context may dictate otherwise,for example, where a first and a second frequency are further limited tobeing orthogonal to each other, in which case, they could not be thesame frequency.

The presently disclosed systems provide for designing, manufacturing andusing capacitive touch sensors, and particularly capacitive touchsensors that employ a multiplexing scheme based on orthogonal signalingsuch as but not limited to frequency-division multiplexing (FDM),code-division multiplexing (CDM), or a hybrid modulation technique thatcombines both FDM and CDM methods. References to frequency herein couldalso refer to other orthogonal signal bases. As such, this applicationincorporates by reference Applicants' prior U.S. patent application Ser.No. 13/841,436, filed on Mar. 15, 2013 entitled “Low-Latency TouchSensitive Device” and U.S. patent application Ser. No. 14/069,609 filedon Nov. 1, 2013 entitled “Fast Multi-Touch Post Processing.” Theseapplications contemplate capacitive FDM, CDM, or FDM/CDM hybrid touchsensors which may be used in connection with the presently disclosedsensors. In such sensors, touches are sensed when a signal from a row iscoupled (increased) or decoupled (decreased) to a column and the resultreceived on that column.

This disclosure will first describe the operation of fast multi-touchsensors to which the present systems and methods for design,manufacturing and use can be applied. Details of the presently disclosedsystems related to keyboards sensitive to hover, contact and pressureare then described further below under the heading “KeyboardEmbodiment.”

As used herein, the phrase “touch event” and the word “touch” when usedas a noun include a near touch and a near touch event, or any othergesture that is identified using a sensor. In accordance with anembodiment, touch events may be detected, processed and supplied todownstream computational processes with very low latency, e.g., on theorder of ten milliseconds or less, or on the order of less than onemillisecond.

In an embodiment, the disclosed fast multi-touch sensor utilizes aprojected capacitive method that has been enhanced for high update rateand low latency measurements of touch events. The technique can useparallel hardware and higher frequency waveforms to gain the aboveadvantages. In an embodiment, disclosed methods and apparatus can beused to make sensitive and robust measurements, which methods may beused on transparent display surfaces and which may permit economicalmanufacturing of products which employ the technique. In an embodiment,disclosed methods and apparatus may be used on traditional keyboards,membrane keyboards and other keyboards having keys, as well as onfeature-sparse or haptic keying surfaces, and on various keyboardswitches (i.e., keys), and which may permit economical manufacturing ofproducts which employ the technique. In this regard, a “capacitiveobject” as used herein could be a finger, other part of the human body,a stylus, or any object to which the sensor is sensitive. The sensorsand methods disclosed herein need not rely on capacitance. With respectto, e.g., the optical sensor, such embodiments utilize photon tunnelingand leaking to sense a touch event, and a “capacitive object” as usedherein includes any object, such as a stylus or finger, that that iscompatible with such sensing. Similarly, “touch locations” and “touchsensitive device” as used herein do not require actual touching contactbetween a capacitive object and the disclosed sensor.

As described in U.S. patent application Ser. No. 14/216,948, entitled“Fast Multi-Touch Stylus and Sensor,” filed on Mar. 17, 2014, fastmulti-touch sensors transmit a different signal onto each of the unit'srows. The entire disclosure of this application is incorporated hereinby reference. The signals are generally designed to be “orthogonal”,i.e., separable and distinguishable from each other. A receiver isattached to each of the unit's arbitrarily designated column. Thereceiver is designed to receive any of the transmitted signals, or anarbitrary combination of them, with or without other signals and/ornoise, and to individually determine a measure, e.g., a quantity foreach of the orthogonal transmitted signals present on that column. Thetouch surface of the sensor comprises a series of rows and columns alongwhich the orthogonal signals can propagate. In an embodiment, the rowsand columns are designed so that, when they are not subject to a touchevent, one amount of signal is coupled between them, whereas, when theyare subject to a touch event, another amount of signal is coupledbetween them. In an embodiment, a lesser amount of signal may representa touch event, and a greater amount of signal may represent a lack oftouch. Because the touch sensor ultimately detects touch due to a changein the coupling, it is not of specific importance, except for reasonsthat may otherwise be apparent to a particular embodiment, whether thetouch-related coupling causes an increase in amount of row signalpresent on the column or a decrease in the amount of row signal presenton the column. As discussed above, the touch, or touch event does notrequire a physical touching, but rather an event that affects the levelof coupled signal.

In an embodiment, generally, the capacitive result of a touch event inthe proximity of both a row and column may cause a non-negligible changein the amount of signal present on the row being coupled to the column.More generally, touch events cause, and thus correspond to, the receivedsignals on the columns. Because the signals on the rows are orthogonal,multiple row signals can be coupled to a column and distinguished by thereceiver. Likewise, the signals on each row can be coupled to multiplecolumns. For each column coupled to a given row (and regardless ofwhether the coupling causes an increase or decrease in the row signal tobe present on the column), the signals found on the column containinformation that will indicate which rows are being touched in proximityto that column. The quantity of each signal received is generallyrelated to the amount of coupling between the column and the rowcarrying the corresponding signal, and thus, may indicate a distance ofthe touching object to the surface, an area of the surface covered bythe touch and/or the pressure of the touch.

When a row and column are touched simultaneously, some of the signalthat is present on the row is coupled into the corresponding column (thecoupling may cause an increase or decrease of the row signal on thecolumn). (As discussed above, the term touch or touched does not requireactual physical contact, but rather, relative proximity.) Indeed, invarious implementations of a touch device, physical contact with therows and/or columns is unlikely as there may be a protective barrierbetween the rows and/or columns and the finger or other object of touch.Moreover, generally, the rows and columns themselves are not in touchwith each other, but rather, placed in a proximity that allows an amountof signal to be coupled there-between, and that amount changes(positively or negatively) with touch. Generally, the row-columncoupling results not from actual contact between them, nor by actualcontact from the finger or other object of touch, but rather, by thecapacitive effect of bringing the finger (or other object) into closeproximity—which close proximity resulting in capacitive effect isreferred to herein as touch.

As is detailed in U.S. patent application Ser. No. 15/200,320, filedJul. 1, 2016, entitled “Systems and Methods for Sensing Pressure inTouch Sensitive Devices,” the entire disclosure of which is incorporatedherein by reference, where there is actual physical contact, there is arelationship between the size and shape of the contact area betweenfinger and touch surface and the amount of pressure applied to thesurface. Because the human finger is not rigid, over a range, it deformsin accordance with pressure. As such, the contact area of a finger isgenerally larger when a high-level of pressure is applied to the touchsurface and smaller when a lower-level of pressure is applied.Similarly, with respect to capacitive coupling between rows and columnsin a capacitive touch sensor, generally, the greater the pressureapplied, the higher the capacitive coupling. The amount of capacitivecoupling can be inferred by the touch system's usual method ofoperation. In an embodiment, changes in the amount of capacitivecoupling will change measured signal strength between rows and columns.A greater-level of pressure causes more skin, fat, muscle, and tissue tocome in close contact with the touch surface, and these parts of thehuman body provide the conductance and dielectric which result inincreased capacitive coupling.

The nature of the rows and columns is arbitrary and the particularorientation is irrelevant. Indeed, the terms row and column are notintended to refer to a square grid, but rather to a set of conductorsupon which signal is transmitted (rows) and a set of conductors ontowhich signal may be coupled (columns). (The notion that signals aretransmitted on rows and received on columns itself is arbitrary, andsignals could as easily be transmitted on conductors arbitrarily namedcolumns and received on conductors arbitrarily named rows, or both couldarbitrarily be named something else.) Further, it is not necessary thatthe rows and columns be in a grid. Other shapes are possible as long asa touch event will touch part of a “row” and part of a “column”, andcause some form of coupling. For example, the “rows” could be inconcentric circles and the “columns” could be spokes radiating out fromthe center. And neither the “rows” nor the “columns” need to follow anygeometric or spatial pattern, thus, for example, the keys on a keyboardcan be arbitrarily connected to form rows and columns (related orunrelated to their relative positions.) Moreover, it is not necessaryfor there to be only two types signal propagation channels: instead ofrows and columns, in an embodiment, channels “A”, “B” and “C” may beprovided, where signals transmitted on “A” could be received on “B” and“C”, or, in an embodiment, signals transmitted on “A” and “B” could bereceived on “C”. It is also possible that the signal propagationchannels can alternate function, sometimes supporting transmission andsometimes supporting receipt. It is also contemplated that the signalpropagation channels can simultaneously support transmitters andreceivers—provided that the signals transmitted are orthogonal, and thusseparable, from the signals received. Three or more types of antennaconductors may be used rather than just “rows” and “columns.” Manyalternative embodiments are possible and will be apparent to a person ofskill in the art after considering this disclosure.

As noted above, in an embodiment the touch surface comprises of a seriesof rows and columns, along which signals can propagate. As discussedabove, the rows and columns are designed so that, when they are notbeing touched, one amount of signal is coupled between them, and whenthey are being touched, another amount of signal is coupled betweenthem. The change in signal coupled between them may be generallyproportional or inversely proportional (although not necessarilylinearly proportional) to the touch such that touch is less of a yes-noquestion, and more of a gradation, permitting distinction between moretouch (i.e., closer or firmer) and less touch (i.e., farther orsofter)—and even no touch. Moreover, a different signal is transmittedinto each of the rows. In an embodiment, each of these different signalsare orthogonal (i.e., separable and distinguishable) from one another.When a row and column are touched simultaneously, signal that is presenton the row is coupled (positively or negatively), causing more or lessto appear in the corresponding column. The quantity of the signal thatis coupled onto a column may be related to the proximity, pressure orarea of touch.

A receiver is attached to each column. The receiver is designed toreceive the signals present on the columns, including any of theorthogonal signals, or an arbitrary combination of the orthogonalsignals, and any noise or other signals present. Generally, the receiveris designed to receive a frame of signals present on the columns, and toidentify the columns providing signal. In an embodiment, the receiver(or a signal processor associated with the receiver data) may determinea measure associated with the quantity of each of the orthogonaltransmitted signals present on that column during the time the frame ofsignals was captured. In this manner, in addition to identifying therows in touch with each column, the receiver can provide additional(e.g., qualitative) information concerning the touch. In general, touchevents may correspond (or inversely correspond) to received signals onthe columns. For each column, the different signals received thereonindicate which of the corresponding rows is being touched in proximitywith that column. In an embodiment, the amount of coupling between thecorresponding row and column may indicate e.g., the area of the surfacecovered by the touch, the pressure of the touch, etc. In an embodiment,a change in coupling over time between the corresponding row and columnindicates a change in touch at the intersection of the two.

Simple Sinusoid Embodiment

In an embodiment, the orthogonal signals being transmitted onto the rowsmay be unmodulated sinusoids, each having a different frequency, thefrequencies being chosen so that they can be distinguished from eachother in the receiver. In an embodiment, frequencies are selected toprovide sufficient spacing between them such that they can be moreeasily distinguished from each other in the receiver. In an embodiment,frequencies are selected such that no simple harmonic relationshipsexist between the selected frequencies. The lack of simple harmonicrelationships may mitigate non-linear artifacts that can cause onesignal to mimic another.

Generally, a “comb” of frequencies, where the spacing between adjacentfrequencies is constant, and the highest frequency is less than twicethe lowest, will meet these criteria if the spacing between frequencies,Δf, is at least the reciprocal of the measurement period τ. For example,if it is desired to measure a combination of signals (from a column, forexample) to determine which row signals are present once per millisecond(τ), then the frequency spacing (Δf) must be greater than one kilohertz(i.e., Δf>1/τ). According to this calculation, in an example case withonly ten rows, one could use the following frequencies:

Row 1: 5.000 MHz Row 2: 5.001 MHz Row 3: 5.002 MHz Row 4: 5.003 MHz Row5: 5.004 MHz Row 6: 5.005 MHz Row 7: 5.006 MHz Row 8: 5.007 MHz Row 9:5.008 MHz Row 10: 5.009 MHz

It will be apparent to one of skill in the art that frequency spacingmay be substantially greater than this minimum to permit robust design.As an example, a 20 cm by 20 cm touch surface with 0.5 cm row/columnspacing would require forty rows and forty columns and necessitatesinusoids at forty different frequencies. While a once per millisecondanalysis rate would require only 1 KHz spacing, an arbitrarily largerspacing is utilized for a more robust implementation. In an embodiment,the arbitrarily larger spacing is subject to the constraint that themaximum frequency should not be more than twice the lowest (i.e.,f_(max)<2(f_(min))). Thus, in an exemplary embodiment, a frequencyspacing of 100 kHz with the lowest frequency set at 5 MHz may be used,yielding a frequency list of 5.0 MHz, 5.1 MHz, 5.2 MHz, etc. up to 8.9MHz.

In an embodiment, each of the sinusoids on the list may be generated bya signal generator and transmitted on a separate row by a signal emitteror transmitter. In an embodiment, the sinusoids may be pre-generated. Toidentify the rows and columns that are being simultaneously touched, areceiver receives any signals present on the columns and a signalprocessor analyzes the signal to determine which, if any, frequencies onthe list appear. In an embodiment, the identification can be supportedwith a frequency analysis technique (e.g., Fourier transform), or byusing a filter bank. In an embodiment, the receiver receives a frame ofcolumn signals, which frame is processed through an FFT, and thus, ameasure is determined for each frequency. In an embodiment, the FFTprovides an in-phase and quadrature measure for each frequency, for eachframe.

In an embodiment, from each column's signal, the receiver/signalprocessor can determine a value (and in an embodiment an in-phase andquadrature value) for each frequency from the list of frequencies foundin the signal on that column. In an embodiment, where the valuecorresponding to a frequency is greater or lower than some threshold, orchanges from a prior value, that information is used to identify a touchevent between the column and the row corresponding to that frequency. Inan embodiment, signal strength information, which may correspond tovarious physical phenomena including the distance of the touch from therow/column intersection, the size of the touch object, the pressure withwhich the object is pressing down, the fraction of row/columnintersection that is being touched, etc. may be used as an aid tolocalize the area of the touch event. In an embodiment, the determinedvalues are not self-determinative of touch, but rather are furtherprocessed along with other values to determine touch events.

Once values for each of the orthogonal frequencies have been determinedfor at least two frequencies (corresponding to rows) or for at least twocolumns, a two-dimensional map can be created, with the value being usedas, or proportional/inversely proportional to, a value of the map atthat row/column intersection. In an embodiment, values are determined atmultiple row/column intersections on a touch surface to produce a mapfor the touch surface or region. In an embodiment, values are determinedfor every row/column intersection on a touch surface, or in a region ofa touch surface, to produce a map for the touch surface or region. In anembodiment, the signals' values are calculated for each frequency oneach column. Once signal values are calculated a two-dimensional map maybe created. In an embodiment, the signal value is the value of the mapat that row/column intersection. In an embodiment, the signal value isprocessed to reduce noise before being used as the value of the map atthat row/column intersection. In an embodiment, another valueproportional, inversely proportional or otherwise related to the signalvalue (either after being processed to reduce noise) is employed as thevalue of the map at that row/column intersection. In an embodiment, dueto physical differences in the touch surface at different frequencies,the signal values are normalized for a given touch or calibrated.Similarly, in an embodiment, due to physical differences across thetouch surface or between the intersections, the signal values need to benormalized for a given touch or calibrated.

In an embodiment, touch events are identified using a map produced fromthe value information, and thus, take into account the value changes ofneighboring row/column intersections. In an embodiment, thetwo-dimensional map data may be thresholded to better identify,determine or isolate touch events. In an embodiment, the two-dimensionalmap data may be used to infer information about the shape, orientation,etc. of the object touching the surface.

In an embodiment, such analysis and touch processing described hereinmay be performed on a touch sensor's discrete touch controller. Inanother embodiment, such analysis and touch processing may be performedon other computer system components such as but not limited to one ormore ASIC, MCU, FPGA, CPU, GPU, SoC, DSP or dedicated circuit. The term“hardware processor” as used herein means any of the above devices orany other device (now known or hereinafter developed) which performscomputational functions.

Returning to the discussion of the signals being transmitted on therows, a sinusoid is not the only orthogonal signal that can be used inthe configuration described above. Indeed, as discussed above, any setof signals that can be distinguished from each other will work.Nonetheless, sinusoids may have some advantageous properties that maypermit simpler engineering and more cost efficient manufacture ofdevices which use this technique. For example, sinusoids have a verynarrow frequency profile (by definition), and need not extend down tolow frequencies, near DC. Moreover, sinusoids can be relativelyunaffected by 1/f noise, which noise could affect broader signals thatextend to lower frequencies.

In an embodiment, sinusoids may be detected by a filter bank. In anembodiment, sinusoids may be detected by frequency analysis techniques(e.g., Fourier transform/fast Fourier transform). Frequency analysistechniques may be implemented in a relatively efficient manner and maytend to have good dynamic range characteristics, allowing them to detectand distinguish between a large number of simultaneous sinusoids. Inbroad signal processing terms, the receiver's decoding of multiplesinusoids may be thought of as a form of frequency-divisionmultiplexing. In an embodiment, other modulation techniques such astime-division and code-division multiplexing can also be used. Timedivision multiplexing has good dynamic range characteristics, buttypically requires that a finite time be expended transmitting into (oranalyzing received signals from) the touch surface. Code divisionmultiplexing has the same simultaneous nature as frequency-divisionmultiplexing, but may encounter dynamic range problems and may notdistinguish as easily between multiple simultaneous signals.

Modulated Sinusoid Embodiment

In an embodiment, a modulated sinusoid may be used in lieu of, incombination with and/or as an enhancement of, the sinusoid embodimentdescribed above. The use of unmodulated sinusoids may causeradiofrequency interference to other devices near the touch surface, andthus, a device employing them might encounter problems passingregulatory testing (e.g., FCC, CE). In addition, the use of unmodulatedsinusoids may be susceptible to interference from other sinusoids in theenvironment, whether from deliberate transmitters or from otherinterfering devices (perhaps even another identical touch surface). Inan embodiment, such interference may cause false or degraded touchmeasurements in the described device.

In an embodiment, to avoid interference, the sinusoids may be modulatedor “stirred” prior to being transmitted by the transmitter in a mannerthat the signals can be demodulated (“unstirred”) once they reach thereceiver. In an embodiment, an invertible transformation (or nearlyinvertible transformation) may be used to modulate the signals such thatthe transformation can be compensated for and the signals substantiallyrestored once they reach the receiver. As will also be apparent to oneof skill in the art, signals emitted or received using a modulationtechnique in a touch device as described herein will be less correlatedwith other things, and thus, act more like mere noise, rather thanappearing to be similar to, and/or being subject to interference from,other signals present in the environment.

U.S. patent application Ser. No. 13/841,436, filed Mar. 15, 2013,entitled “Low-Latency Touch Sensitive Device,” discloses embodimentsdirected to frequency modulation, direct sequence spread spectrummodulation, and low cost implementation embodiments. The entiredisclosure of the application is incorporated herein by reference.

Sinusoid Detection

In an embodiment, sinusoids may be detected in a receiver using acomplete radio receiver with a Fourier Transform detection scheme. Suchdetection may require digitizing a high-speed RF waveform and performingdigital signal processing thereupon. Separate digitization and signalprocessing may be implemented for every column of the surface; thispermits the signal processor to discover which of the row signals are intouch with that column. In the above-noted example, having a touchsurface with forty rows and forty columns, would require forty copies ofthis signal chain. Today, digitization and digital signal processing arerelatively expensive operations, in terms of hardware, cost, and power.It would be useful to utilize a more cost-effective method of detectingsinusoids, especially one that could be easily replicated and requiresvery little power.

In an embodiment, sinusoids may be detected using a filter bank. Afilter bank comprises an array of bandpass filters that can take aninput signal and break it up into the frequency components associatedwith each filter. The Discrete Fourier Transform (DFT, of which the FFTis an efficient implementation) is a form of a filter bank withevenly-spaced bandpass filters that may be used for frequency analysis.DFTs may be implemented digitally, but the digitization step may beexpensive. It is possible to implement a filter bank out of individualfilters, such as passive LC (inductor and capacitor) or RC activefilters. Inductors are difficult to implement well on VLSI processes,and discrete inductors are large and expensive, so it may not be costeffective to use inductors in the filter bank.

At lower frequencies (about 10 MHz and below), it is possible to buildbanks of RC active filters on VLSI. Such active filters may performwell, but may also take up a lot of die space and require more powerthan is desirable.

At higher frequencies, it is possible to build filter banks with surfaceacoustic wave (SAW) filter techniques. These allow nearly arbitrary FIRfilter geometries. SAW filter techniques require piezoelectric materialswhich are more expensive than straight CMOS VLSI. Moreover, SAW filtertechniques may not allow enough simultaneous taps to integratesufficiently many filters into a single package, thereby raising themanufacturing cost.

In an embodiment, sinusoids may be detected using an analog filter bankimplemented with switched capacitor techniques on standard CMOS VLSIprocesses that employs an FFT-like “butterfly” topology. The die arearequired for such an implementation is typically a function of thesquare of the number of channels, meaning that a 64-channel filter bankusing the same technology would require only 1/256th of the die area ofthe 1024-channel version. In an embodiment, the complete receive systemfor the low-latency touch sensor is implemented on a plurality of VLSIdies, including an appropriate set of filter banks and the appropriateamplifiers, switches, energy detectors, etc. In an embodiment, thecomplete receive system for the low-latency touch sensor is implementedon a single VLSI die, including an appropriate set of filter banks andthe appropriate amplifiers, switches, energy detectors, etc. In anembodiment, the complete receive system for the low-latency touch sensoris implemented on a single VLSI die containing n instances of ann-channel filter bank, and leaving room for the appropriate amplifiers,switches, energy detectors, etc.

Sinusoid Generation

Generating the transmit signals (e.g., sinusoids) in a low-latency touchsensor is generally less complex than detection, principally becauseeach row requires the generation of a single signal (or a small numberof signals) while the column receivers have to detect and distinguishbetween many signals. In an embodiment, sinusoids can be generated witha series of phase-locked loops (PLLs), each of which multiply a commonreference frequency by a different multiple.

In an embodiment, the low-latency touch sensor design does not requirethat the transmitted sinusoids are of very high quality, but rather, mayaccommodate transmitted sinusoids that have more phase noise, frequencyvariation (over time, temperature, etc.), harmonic distortion and otherimperfections than may usually be allowable or desirable in radiocircuits. In an embodiment, the large number of frequencies may begenerated by digital means and then employ a relatively coarsedigital-to-analog conversion process. As discussed above, in anembodiment, the generated row frequencies should have no simple harmonicrelationships with each other, any non-linearities in the generationprocess should not cause one signal in the set to “alias” or mimicanother.

In an embodiment, a frequency comb may be generated by having a train ofnarrow pulses filtered by a filter bank, each filter in the bankoutputting the signals for transmission on a row. The frequency “comb”is produced by a filter bank that may be identical to a filter bank thatcan be used by the receiver. As an example, in an embodiment, a 10nanosecond pulse repeated at a rate of 100 kHz is passed into the filterbank that is designed to separate a comb of frequency componentsstarting at 5 MHz, and separated by 100 kHz. The pulse train as definedwould have frequency components from 100 kHz through the tens of MHz,and thus, would have a signal for every row in the transmitter. Thus, ifthe pulse train were passed through an identical filter bank to the onedescribed above to detect sinusoids in the received column signals, thenthe filter bank outputs will each contain a single sinusoid that can betransmitted onto a row.

Fast Multi-Touch Post Processing

After the signal strengths from each row in each column have beencalculated using, for example, the procedures described above,post-processing is performed to convert the resulting 2-D “heat map,”also referred to as a “matrix,” into usable touch events. In anembodiment, such post processing includes at least some of the followingfour procedures: field flattening, touch point detection, interpolationand touch point matching between frames. The field flattening proceduresubtracts an offset level to remove crosstalk between rows and columns,and compensates for differences in amplitude between particularrow/column combinations due to attenuation. The touch point detectionprocedure computes the coarse touch points by finding local maxima inthe flattened signal. The interpolation procedure computes the finetouch points by fitting data associated with the coarse touch points toa paraboloid. The frame matching procedure matches the calculated touchpoints to each other across frames. Below, each of the four proceduresis described in turn. Also disclosed are examples of implementation,possible failure modes, and consequences, for each processing step.Because of the requirement for very low latency, the processing stepsshould be optimized and parallelized.

The field flattening procedure is first described. Systematic issues dueto the design of the touch surface and sensor electronics may causeartifacts in each column's received signal strength. In an embodiment,these artifacts may be compensated for as follows. First, because ofcross-talk between the rows and columns, the received signal strengthfor each row/column combination will experience an offset level. To agood approximation, this offset level will be constant and can besubtracted (or added) off.

Second, the amplitude of the signal received at a column due to acalibrated touch at a given row and column intersection will depend onthat particular row and column, mostly due to attenuation of the signalsas they propagate along the row and column. The farther they travel, themore attenuation there will be, so columns farther from the transmittersand rows farther from the receivers will have lower signal strengths inthe “heat map” than their counterparts. If the RF attenuation of therows and columns is low, the signal strength differences may benegligible and little or no compensation will be necessary. If theattenuation is high, compensation may be necessary or may improve thesensitivity or quality of touch detection. Generally, the signalstrengths measured at the receivers are expected to be linear with theamount of signal transmitted into the columns. Thus, in an embodiment,compensation will involve multiplying each location in the heat map by acalibration constant for that particular row/column combination. In anembodiment, measurements or estimates may be used to determine a heatmap compensation table, which table can be similarly used to provide thecompensation by multiplication. In an embodiment, a calibrationoperation is used to create a heat map compensation table. The term“heat map” as used herein does not require an actual map of heat, butrather the term can mean any array of at least two dimensions comprisingdata corresponding to locations.

In an embodiment, the entire field flattening procedure is as follows.With nothing touching the surface, first the signal strength for eachrow signal at each column receiver is measured. Because there are notouches, substantially the entire signal received is due to cross-talk.The value measured (e.g., the amount of each row's signal found on eachcolumn) is an offset level that needs to be subtracted from thatposition in the heat map. Then, with the constant offsets subtracted, acalibrated touch object is placed at row/column intersections and thesignal strength of that row's signal at that column receiver ismeasured. In an embodiment, all row/column intersections are used forcalibration. The signal processor may be configured to normalize thetouch events to the value of one location on the touch surface. Thelocation likely to have the strongest signals can be arbitrarily chosen(because it experiences the least attenuation), i.e., the row/columnintersection closest to the transmitters and receivers. If thecalibrated touch signal strength at this location is S_(N) and thecalibrated touch signal strength for each row and column is S_(R,C)then, if each location in the heat map is multiplied by (S_(N)/S_(R,C)),all touch values will be normalized. In an embodiment, calibratedtouches may cause the normalized signal strength for any row/column inthe heat map to be equal to one.

The field flattening procedure parallelizes well. Once the offsets andnormalization parameters are measured and stored—which should only needto be done once (or possibly again at a maintenance interval)—thecorrections can be applied as soon as each signal strength is measured.

In an embodiment, calibrating each row/column intersection may berequired at regular or selected maintenance intervals. In an embodiment,calibrating each row/column intersection may be required once per unit.In an embodiment, calibrating each row/column intersection may berequired once per design. In an embodiment, and particularly where,e.g., RF attenuation of the rows and columns is low, calibrating eachrow/column intersection may not be required at all. Moreover, in anembodiment where the signal attenuation along the rows and columns isfairly predictable, it may be possible to calibrate an entire surfacefrom only a few intersection measurements.

If a touch surface does experience a lot of attenuation, the fieldflattening procedure will, at least to some degree, normalize themeasurements, but it may have some side effects. For example, the noiseon each measurement will grow as its normalization constant gets larger.It will be apparent to one of skill in the art, that for lower signalstrengths and higher attenuations, this may cause errors and instabilityin the touch point detection and interpolation processes. Accordingly,in an embodiment, sufficient signal strength is provided for the signalundergoing the largest attenuation (e.g., the farthest row/columnintersection).

Touch point detection is now addressed, where one or more coarse touchpoints are identified. In an embodiment, after the heat map is generatedand the field flattened, one or more coarse touch points can beidentified. In an embodiment, identifying the one or more coarse touchpoints may be done by finding local maxima in the normalized (i.e.,flattened) signal strengths. In an embodiment, a fast and parallelizablemethod for finding the one or more touch points compares each element ofthe normalized heat map to its neighbors and labels an element as alocal maximum if it is strictly greater than all of them. In anembodiment, a point is identified as a local maximum if it is bothstrictly greater than all of its neighbors and above a given threshold.

It is within the scope of this disclosure to define the set of neighborsin various ways. In an embodiment, the nearest neighbors are defined bya Von Neumann neighborhood. In an embodiment, the nearest neighbors aredefined by a Moore neighborhood. The Von Neumann neighborhood mayconsist of the four elements that are vertically and horizontallyadjacent to the element in the center (i.e., the elements to the north,south, east and west of it). This is also called a “four-connected”neighborhood. More complex (i.e., larger) Von Neumann neighborhoods arealso applicable and may be used. The Moore neighborhood consists of theeight elements that are vertically, horizontally and diagonally adjacentto the element in the center (i.e., the elements to the north, south,east, west, northeast, northwest, southeast and southwest of it). Thisis also called the “eight-connected” neighborhood.

The neighborhood chosen may depend on the interpolation scheme used tocalculate the fine touch points. This is illustrated in further detailbelow.

In a given neighbor comparison, a special case may exist where anelement's normalized signal strength is equal to one or more of itsneighbors, strictly, or within a tolerance to allow for noise levels. Inan embodiment, neither point in such pair is considered to be a touchpoint even if they have values above the threshold. In an embodiment,both points in such pair are considered to be touch points. In anembodiment, regions where two or more neighboring points haveapproximately the same value are treated as one touch event. In anembodiment, regions where two or more neighboring points haveapproximately the same value are treated as a different type of touchevent (e.g., perhaps someone has their wrist in contact with the touchsurface) from the regions where a single local maxima can be found.

Turning now to the interpolation procedure. Once the coarse touch pointshave been determined (i.e., identified), fine touch points can becomputed using interpolation. In an embodiment, the capacitive contactof a distributed touch is fit to a model function having a maximum. Inan embodiment, the model function is a second-order function in two ormore dimensions. In an embodiment, the second-order function is aparaboloid. In an embodiment, the paraboloid model is an acceptableapproximation for a variety of objects that may be used to touch a touchsurface, such as a finger or stylus. Moreover, as discussed below, theparaboloid model is relatively non-intensive computationally. In anembodiment, a more complex or more computationally intensive model maybe used to provide more accurate estimation of the touch from theflattened heat map. For the purposes of the discussion below, theparaboloid is used as an illustrative example, but as will be apparentto one of skill in the art in view of this disclosure, that othermodels, including models of greater or lesser complexity may be employedfor the purpose of interpolation.

For such a four-connected, Von Neumann neighborhood around an exemplarylocal maximum, the relevant points would appear with the central elementbeing the local maximum and the subscripts being the coordinates of aparticular element relative to it. The positions and signal strengths ofthe five elements fit into the following equation defining a paraboloid:Ax ² +Cy ² Dx+Ey+F=zWhere x and y are the position of an element, z is the signal strengthof the element, and A, C, D, E and F are the coefficients of thesecond-order polynomial. Relative to the central point, all of elementx, y positions are constant. The z values are the measured signalstrengths at each element, and thus are known. In an embodiment, fivesimultaneous equations can be used to solve for the five unknownpolynomial coefficients. Each equation represents one of the fivepoints, including the central point and its four neighbors.

In an embodiment, a Vandermonde-like matrix can be employed to solve forthe polynomial coefficients, as follows:

${\begin{bmatrix}x_{0,1}^{2} & y_{0,1}^{2} & x_{0,1} & y_{0,1} & 1 \\x_{{- 1},0}^{2} & y_{{- 1},0}^{2} & x_{{- 1},0} & y_{{- 1},0} & 1 \\x_{0,0}^{2} & y_{0,0}^{2} & x_{0,0} & y_{0,0} & 1 \\x_{1,0}^{2} & y_{1,0}^{2} & x_{1,0} & y_{1,0} & 1 \\x_{0,{- 1}}^{2} & y_{0,{- 1}}^{2} & x_{0,{- 1}} & y_{0,{- 1}} & 1\end{bmatrix}\begin{bmatrix}A \\C \\D \\E \\F\end{bmatrix}} = \begin{bmatrix}z_{0,1} \\z_{{- 1},0} \\z_{0,0} \\z_{1,0} \\z_{0,{- 1}}\end{bmatrix}$Substituting in the values for the element positions, provides:

${\begin{bmatrix}0 & 1 & 0 & 1 & 1 \\1 & 0 & {- 1} & 0 & 1 \\0 & 0 & 0 & 0 & 1 \\1 & 0 & 1 & 0 & 1 \\0 & 1 & 0 & {- 1} & 1\end{bmatrix}\begin{bmatrix}A \\C \\D \\E \\F\end{bmatrix}} = \begin{bmatrix}z_{0,1} \\z_{{- 1},0} \\z_{0,0} \\z_{1,0} \\z_{0,{- 1}}\end{bmatrix}$And then solve for the polynomial coefficients by inverting the constantVandermonde-like matrix:

$\begin{bmatrix}0 & 1 & 0 & 1 & 1 \\1 & 0 & {- 1} & 0 & 1 \\0 & 0 & 0 & 0 & 1 \\1 & 0 & 1 & 0 & 1 \\0 & 1 & 0 & {- 1} & 1\end{bmatrix}^{- 1} = {\frac{1}{2}\begin{bmatrix}0 & 1 & {- 2} & 1 & 0 \\1 & 0 & {- 2} & 0 & 1 \\0 & {- 1} & 0 & 1 & 0 \\1 & 0 & 0 & 0 & {- 1} \\0 & 0 & 2 & 0 & 0\end{bmatrix}}$This yields:

$\begin{bmatrix}A \\C \\D \\E \\F\end{bmatrix} = {{\frac{1}{2}\begin{bmatrix}0 & 1 & {- 2} & 1 & 0 \\1 & 0 & {- 2} & 0 & 1 \\0 & {- 1} & 0 & 1 & 0 \\1 & 0 & 0 & 0 & {- 1} \\0 & 0 & 2 & 0 & 0\end{bmatrix}}\begin{bmatrix}z_{0,1} \\z_{{- 1},0} \\z_{0,0} \\z_{1,0} \\z_{0,{- 1}}\end{bmatrix}}$

In an embodiment, the polynomial coefficients are a linear combinationof the signal strengths and only simple multiplication, involvingnegation and a single shift, are required to calculate them;accordingly, they can be efficiently computed in an FPGA or ASIC.

At the maximum of the paraboloid, both partial derivatives are zero:

$\frac{\partial x}{\partial z} = {{{2{Ax}} + D} = {{0\mspace{14mu}{and}\mspace{14mu}\frac{\partial y}{\partial z}} = {{{2{Cy}} + E} = 0}}}$This will occur at the point x_(f), y_(f) where:

$x_{f} = {{{- \;\frac{D}{2A}}\mspace{14mu}{and}\mspace{14mu} y_{f}} = {- \frac{E}{2C}}}$Thus, in an embodiment where the neighborhood data is fit to aparaboloid, and because a paraboloid has one maximum, that maximum isused as a location of the fine touch point. In an embodiment utilizingthe four-connected neighborhood, the values x_(f) and y_(f) areindependent of each other, with x_(f) depending only on the signalstrengths of the elements to the left and right of the center point, andy_(f) depending only on the signal strengths of the elements above andbelow it.

For a Moore or eight-connected neighborhood around a local maximum, therelevant points would appear with the central element being the localmaximum and the subscripts being the coordinates of a particular elementrelative to it. The positions and signal strengths of the nine elementscan be fit to a paraboloid equation. Because more input data isavailable in this example than the previous example, a somewhat morecomplex equation for a parabolid can be employed:Ax ² +Bxy+Cy ² +Dx+Ey+F=zThis equation has an added xy cross term and a new B coefficient thatpermits the model to compensate for elongation in a direction other thanx or y. Again, relative to the central point, all of the element x, ypositions are constant and the z values are known. Nine simultaneousequations (one per element) can be used to determine (i.e.,overdetermine) the six unknown polynomial coefficients. A least-squarestechnique may be used to solve for the six unknown polynomialcoefficients.

A Vandermonde-like matrix may be used to fit the polynomial. Unlike theembodiment described above, the matrix is non-square, with nine rows andsix columns.

${\begin{bmatrix}x_{{- 1},1}^{2} & {xy}_{{- 1},1} & y_{{- 1},1}^{2} & x_{{- 1},1} & y_{{- 1},1} & 1 \\x_{0,1}^{2} & {xy}_{0,1} & y_{0,1}^{2} & x_{0,1} & y_{0,1} & 1 \\x_{1,1}^{2} & {xy}_{1,1} & y_{1,1}^{2} & x_{1,1} & y_{1,1} & 1 \\x_{{- 1},0}^{2} & {xy}_{{- 1},0} & y_{{- 1},0}^{2} & x_{{- 1},0} & y_{{- 1},0} & 1 \\x_{0,0}^{2} & {xy}_{0,0} & y_{0,0}^{2} & x_{0,0} & y_{0,0} & 1 \\x_{1,0}^{2} & {xy}_{1,0} & y_{1,0}^{2} & x_{1,0} & y_{1,0} & 1 \\x_{{- 1},{- 1}}^{2} & {xy}_{{- 1},{- 1}} & y_{{- 1},{- 1}}^{2} & x_{{- 1},{- 1}} & y_{{- 1},{- 1}} & 1 \\x_{0,{- 1}}^{2} & {xy}_{0,{- 1}} & y_{0,{- 1}}^{2} & x_{0,{- 1}} & y_{0,{- 1}} & 1 \\x_{1,{- 1}}^{2} & {xy}_{1,{- 1}} & y_{1,{- 1}}^{2} & x_{1,{- 1}} & y_{1,{- 1}} & 1\end{bmatrix}\begin{bmatrix}A \\B \\C \\D \\E \\F\end{bmatrix}} = \begin{bmatrix}z_{{- 1},1} \\z_{0,1} \\z_{1,1} \\z_{{- 1},0} \\z_{0,0} \\z_{1,0} \\z_{{- 1},{- 1}} \\z_{0,{- 1}} \\z_{1,{- 1}}\end{bmatrix}$All of the entires in the Vandermonde-like matrix are constant, and thez values are known, thus substituting in the constant values, yields

${\begin{bmatrix}1 & 1 & 1 & {- 1} & {- 1} & 1 \\0 & 0 & 1 & 0 & {- 1} & 1 \\1 & {- 1} & 1 & 1 & {- 1} & 1 \\1 & 0 & 0 & {- 1} & 0 & 1 \\0 & 0 & 0 & 0 & 0 & 1 \\1 & 0 & 0 & 1 & 0 & 1 \\1 & {- 1} & 1 & {- 1} & 1 & 1 \\0 & 0 & 1 & 0 & 1 & 1 \\1 & 1 & 1 & 1 & 1 & 1\end{bmatrix}\begin{bmatrix}A \\B \\C \\D \\E \\F\end{bmatrix}} = \begin{bmatrix}z_{{- 1},1} \\z_{0,1} \\z_{1,1} \\z_{{- 1},0} \\z_{0,0} \\z_{1,0} \\z_{{- 1},{- 1}} \\z_{0,{- 1}} \\z_{1,{- 1}}\end{bmatrix}$Because the Vandermonde-like matrix is non-square, it cannot be invertedto solve for the polynomial coefficients. It can be solved, however,using its Moore-Penrose pseudo-inverse and performing a least squaresfit to the polynomial coefficients. In an embodiment, the pseudo inverseis defined as:

  pinv(X) = (X^(T)X)⁻¹X^(T) ${{pinv}\begin{bmatrix}1 & 1 & 1 & {- 1} & {- 1} & 1 \\0 & 0 & 1 & 0 & {- 1} & 1 \\1 & {- 1} & 1 & 1 & {- 1} & 1 \\1 & 0 & 0 & {- 1} & 0 & 1 \\0 & 0 & 0 & 0 & 0 & 1 \\1 & 0 & 0 & 1 & 0 & 1 \\1 & {- 1} & 1 & {- 1} & 1 & 1 \\0 & 0 & 1 & 0 & 1 & 1 \\1 & 1 & 1 & 1 & 1 & 1\end{bmatrix}} = {\frac{1}{36}\begin{bmatrix}6 & {- 12} & 6 & 6 & {- 12} & 6 & 6 & {- 12} & 6 \\{- 9} & 0 & 9 & 0 & 0 & 0 & 9 & 0 & {- 9} \\6 & 6 & 6 & {- 12} & {- 12} & {- 12} & 6 & 6 & 6 \\{- 6} & 0 & 6 & {- 6} & 0 & 6 & {- 6} & 0 & 6 \\6 & 6 & 6 & 0 & 0 & 0 & {- 6} & {- 6} & {- 6} \\{- 4} & 8 & {- 4} & 8 & 20 & 8 & {- 4} & 8 & {- 4}\end{bmatrix}}$ ${{giving}{\text{:}\mspace{14mu}\begin{bmatrix}A \\B \\C \\D \\E \\F\end{bmatrix}}} = {{\frac{1}{36}\begin{bmatrix}6 & {- 12} & 6 & 6 & {- 12} & 6 & 6 & {- 12} & 6 \\{- 9} & 0 & 9 & 0 & 0 & 0 & 9 & 0 & {- 9} \\6 & 6 & 6 & {- 12} & {- 12} & {- 12} & 6 & 6 & 6 \\{- 6} & 0 & 6 & {- 6} & 0 & 6 & {- 6} & 0 & 6 \\6 & 6 & 6 & 0 & 0 & 0 & {- 6} & {- 6} & {- 6} \\{- 4} & 8 & {- 4} & 8 & 20 & 8 & {- 4} & 8 & {- 4}\end{bmatrix}}\begin{bmatrix}z_{{- 1},1} \\z_{0,1} \\z_{1,1} \\z_{{- 1},0} \\z_{0,0} \\z_{1,0} \\z_{{- 1},{- 1}} \\z_{0,{- 1}} \\z_{1,{- 1}}\end{bmatrix}}$The polynomial coefficients are a linear combination of the signalstrengths. The multiplications are slightly more complicated, but manyof the multiplicands can be factored out and applied a single time nearthe end of the calculation. The purpose of this step is to find themaximum of a paraboloid. Accordingly, overall scale factors areirrelevant, and focus need only be on relative values and argumentswhich maximize the function, in an embodiment, many of the operationsmay be canceled out, improving the efficiency of implementation.

As above, the fine touch point is presumed at the maximum of theparaboloid, where both partial derivatives are zero:

$\frac{\partial x}{\partial z} = {{{2{Ax}} + {By} + D} = {{0\mspace{14mu}{and}\mspace{14mu}\frac{\partial y}{\partial z}} = {{{Bx} + {2{Cy}} + E} = 0}}}$This will occur at the point x_(f), y_(f) where:x _(f)=(BE−2CD)/(4AC−B ²) and y _(f)=(DB−2AE)/(4AC−B ²)

For the eight-connected neighborhood, the values x_(f) and y_(f) are notindependent of each other. Both depend on the signal strengths of alleight neighbors. Thus, this approach may have an increased computationalburden and the possibility that certain combinations of signal strengthswill produce singular values for the fine touch points. In an embodimentusing the least-squares approach on the eight Moore neighbors, such animplementation is more robust against noisy signal strength values. Inother words, in an embodiment, small errors in one signal strength willbe compensated for by the increased amount of data used in thecalculation, and the self-consistency of that data.

Moreover, the eight-connected neighborhood provides a B coefficient—anextra piece of information—that might prove useful as part of a userinterface. The B coefficient of the xy cross-term can be used tocharacterize asymmetry in the fitted paraboloid and, along with theaspect ratio information inherent in the A and C coefficients, whichcould allow software to determine the angle at which a touch isoccurring.

By way of example, a touch point with an elliptical cross section can beobtained by truncating the paraboloid at a particular z value. Thevalues of a and b can be obtained from the A and C coefficients of thepolynomial, and they provide information about the aspect ratio of theobject touching the surface. For example, a finger or stylus would notnecessarily be circularly symmetric, and the ratio of a to b couldprovide information about its shape.

Knowledge of the angle ϕ can provide information on the orientation ofthe ellipse, and might, for example, indicate which way a finger orstylus is pointing. ϕ can be calculated from the eigenvalues andeignevectors of the 2×2 matrix M given by the following:

$M = \begin{bmatrix}A & {B/2} \\{B/2} & C\end{bmatrix}$This matrix will have two eignevalues and two eigenvectors. Theeigevector associated with the largest eigenvalue will point in thedirection of the ellipse's major axis. The other eigenvector will pointin the direction of the minor axis. The eigenvalues, λ₁ and λ₂ can becomputed as follows:

$\lambda_{i} = \frac{{{tr}(M)} \pm \sqrt{{{tr}(M)}^{2} - {4{\det(M)}}}}{2}$Where tr(M) is the trace of the matrix M, which is equal to AC, anddet(M) is the determinant of the matrix M, which is equal to AC−B²/4.

Once the eigenvalues are obtained, the Cayley-Hamilton theorem can beused to compute the eigenvectors. The eigenvector associated with λ₁ iseither of the columns of the matrix M−λ₂I and the eigenvector associatedwith λ₂ is either of the columns of the matrix M−λ₁I. Note the reversalof the eigenvalue indexes. The angle ϕ that the major axis of theellipse makes with respect to the x axis of our coordinate system is thearctangent of the slope of the eigenvector. The slope of the eigenvectoris just Δy/Δx.

As discussed above, the interpolation step requires determining a finetouch point, e.g., using data acquired from a flattened heat map, but itis not necessarily limited to the illustrative paraboloid modeldiscussed above. The purpose of determining a fine touch point is topermit the post-processor to provide better granularity in touch points,and specifically, to provide granularity that exceeds the sensor'sintersections. Stated another way, the modeled and interpolated finetouch point can land directly on a row/column intersection, or anywherein between the intersections. There may be a tradeoff between theaccuracy of the model and its computational requirements; similarly,there may be a tradeoff between the accuracy of the model and itsability to provide an interpolated fine touch point that correspondswith the actual touch. Thus, in an embodiment, a model is selected torequire the smallest computational load while providing sufficientcorrespondence between the interpolated touch point and the actualtouch. In an embodiment, a model is selected to require sufficientcorrespondence between the interpolated touch point and the actualtouch, and the processing hardware is selected to accommodate thecomputational load of the model. In an embodiment, a model is selectedthat does not exceed the computational capacity of pre-selected hardwareand/or other software operating the touch interface.

Turning to the frame matching procedure, to properly track objectsmoving on the touch surface over time, it is important to match thecalculated touch points to each other across frame boundaries, and thus,e.g., to track objects moving on the touch surface as they move. Thus,in an embodiment, each calculated touch point in one frame should beidentified in, or have another disposition (e.g., removed) in, thesubsequent frame. While this represents a fundamentally difficultproblem, which could be insoluble in the general case, in an embodiment,a solution is implemented using both geometry and the laws of physics.Because the items that are in contact with the touch surface are offinite size and move according to certain physical principles, in anembodiment, certain cases can be ignored as being outside of plausibleranges. Moreover, in an embodiment, a frame rate should be selected tobe sufficiently high to permit object tracking (that is, frame-to-frametouch point tracking) with reasonable certainty. Thus, for example,where objects to be tracked are either known to move at a maximum rateacross the touch surface or the tracking is designed to track theobjects only up to a maximum rate, a frame rate can be selected thatwill permit tracking with reasonable certainty. For example, if amaximum rate of movement across the rows or columns of the touch surfaceis, e.g., 1000 rows or columns per second, then a frame rate of 1000 Hzwill “see” an object move no more than 1 row or column per frame. In anembodiment, touch point interpolation (as discussed above) can provide amore precise measure of the touch point location, and thus, intra-rowand intra-column positions are readily identifiable as described morefully herein.

Fingers and styluses have a minimum size and are, in most cases,unlikely to approach each other closely enough to cause an ambiguouscase. They also travel at speeds characteristic of the motion of a humanarm and its parts (e.g., wrist, elbow, fingers, etc.), which providesbounds. In an embodiment, a touch surface has an update rate on theorder of one kilohertz or more, thus, fingers and styluses touching thesurface cannot move very far or at extreme angles during the updateperiod from one frame to the next. Because of the limited distances andangles, tracking can be performed according to the present disclosure bycomparing data from one frame to one or more past frames.

In an embodiment, data concerning past frames (e.g., a heat map) may bemaintained in a temporary buffer. In an embodiment, processed dataconcerning past frames (e.g., field flattened heat map or fittedpolynomial coefficients) may be maintained in a temporary buffer. In anembodiment, the data concerning a past frame that is maintained in atemporary buffer may include, or may consist of, an interpolated finetouch point coordinate for each fine touch point in the prior frame,and, to the extent such exists, vectors concerning prior motion of thosefine touch points. The temporary buffer may retain data concerning oneor more past frames, and may cease to retain the data when it is nolonger relevant to later calculations.

In an embodiment, the frame matching process initially presumes that anobject's touch point in the current frame i is probably the touch pointin the prior frame (i.e., i−1) which is geometrically closest to it.

In an embodiment, data concerning the motion of a touch point (e.g.,velocity and direction) are determined and stored in connection with oneor more frames. In an embodiment, data concerning the motion of a touchpoint is used to predict a likely location for that touch point in thenext frame. Data concerning the motion of a touch point may comprise,for example, velocity or change in position, and may come from one ormore prior frames. In an embodiment, predicting a likely location in aframe is done by considering the motion between two frames—yielding aper-frame displacement and its direction. In an embodiment, predicting alikely location in a frame is done by considering the motion in three ormore frames. Using fine touch point positional information from three ormore frames may yield a more precise prediction as it can take intoaccount acceleration and changes of direction in addition to per-framedisplacement and direction. In an embodiment, more weight is assigned tomore recent frame data than to older frame data. A frame matchingprocess may initially presume that an object's touch point in thecurrent frame i is more likely to correspond with the touch point in theprior frame (i.e., i−1) that is associated with the predicted likelylocation closest to the touch point in the current frame.

In an embodiment, data concerning the size (magnitude) of a touch point(e.g., the A and C coefficients of a paraboloid) is determined andstored in connection with one or more frames. A frame matching processmay initially presume that the size of a given object in the currentframe i probably corresponds with the size of that object in the priorframe (i.e., i−1).

In an embodiment, data concerning the change in size (magnitude) of atouch point over time are determined and stored in connection with oneor more frames. In an embodiment, data concerning the change in size ofa touch point in a frame (e.g., since the last frame, or over aplurality of frames) is used to predict a likely size for that touchpoint in the next frame. A frame matching process may initially presumethat an object in the current frame i is more likely to correspond withan object in the prior frame (i.e., i−1) that is associated with thepredicted likely size nearest the size of the touch point in the currentframe.

In an embodiment, data concerning the change in rotational orientation(e.g., the B coefficient of a paraboloid) of a touch point over time aredetermined and stored in connection with one or more frames. In anembodiment, data concerning the rotational orientation of a touch pointin a frame (e.g., since the last frame, or over a plurality of frames)is used to predict a rotational orientation for that touch point in thenext frame. A frame matching process may initially presume that anobject in the current frame i is more likely to correspond with anobject in the prior frame (i.e., i−1) that is associated with thepredicted likely rotational orientation nearest the rotationalorientation of the touch point in the current frame. In an embodiment,the rotational orientation of a touch point could permit single touchpoint control (e.g., single finger control) of rotation, thus, forexample, the rotation of one finger on a screen could provide sufficientinformation to, for example, rotate a view—a function that traditionallyrequires two rotating points of contact with a touch surface. Using datadescribing rotational orientation over time, rotational velocity can becomputed. Similarly, data concerning rotational orientation orrotational velocity can be used to compute rotational acceleration.Thus, rotational velocity and rotational acceleration both utilizerotational orientation. Rotational orientation, rotational velocityand/or rotational acceleration may be computed for a touch point andoutput by or used by the frame matching process.

In an embodiment, heuristics for frame matching include changes indistance and in the velocity vectors of the touch points. In anembodiment, heuristics for frame matching include, without limitation,one or more of the following:

-   -   an object's touch point in frame i+1 is more likely the touch        point in frame i which is geometrically closest to it;    -   an object's touch point in frame i+1 is more likely the touch        point in frame i which is closest to the point where it would be        predicted to be given the object's velocity history; and    -   an object's touch point in frame i+1 is more likely of a similar        size to its touch point in frame i.

Other combinations of historical data may be used without departing fromthe scope of this disclosure. In an embodiment, both prior positions andthe velocity histories may be used in a heuristic frame matchingprocess. In an embodiment, prior positions, the velocity histories andsize histories may be used in a heuristic frame matching process. In anembodiment, prior positions and other historical information may be usedin a heuristic frame matching process. In an embodiment, historicalinformation over a plurality of frames is used in a heuristic framematching process. Other combinations will be apparent to one of skill inthe art in view of the foregoing disclosure.

In U.S. patent application Ser. No. 14/216,791, filed Mar. 17, 2014,entitled “Fast Multi-Touch Noise Reduction,” methods and systems areprovided to overcome certain conditions in which noise producesinterference with, or phantom touches in, the Fast Multi-Touch (FMT)sensor. The entire disclosure of this application is incorporated hereinby reference. In an embodiment, unique signals may be transmitted on allrows and columns. In an embodiment, unique signals may be transmitted oneach row in one or more subsets of rows. In an embodiment, uniquesignals may be transmitted on each column in one or more subsets ofcolumns. In an embodiment, all rows and columns are configured to detectthe unique signals. In an embodiment, each row in one or more subsets ofrows is configured to detect the unique signals. In an embodiment, eachcolumn in one or more subsets of columns is configured to detect theunique signals.

As disclosed in U.S. patent application Ser. No. 14/603,104, filed Jan.22, 2015, entitled “Dynamic Assignment of Possible Channels in a TouchSensor,” a system and method enables a touch sensor to reduce oreliminate such false or noisy readings and maintain a highsignal-to-noise ratio, even if it is proximate to interferingelectromagnetic noise from other computer system components or unwantedexternal signals. This method can also be used to dynamicallyreconfigure the signal modulation scheme governing select portions orthe entire surface-area of a touch sensor at a given point in time inorder to lower the sensor's total power consumption, while stilloptimizing the sensor's overall performance in terms of parallelism,latency, sample-rate, dynamic range, sensing granularity, etc. Theentire disclosure of the application is incorporated herein byreference.

Keyboard Embodiment

Use of physical keyboards in virtual reality or augmented reality(hereinafter, “VR/AR,” even though the two terms can be mutuallyexclusive) settings is complicated by the fact that a user may not haveany view, or a full view, of the keyboard when within the VR/AR setting.The keyboard and keyboard switches disclosed herein render one or morekeys, a touch surface, or a keyboard into a sensitive, dynamic, hover,contact and pressure sensitive surface that can be used for bothtraditional keyboard or keying applications, as well as numerous newapplications enabled by the additional information available from thekeys or surfaces. In an embodiment, a physical keyboard is describedthat can sense not only the traditional keyboard inputs, but may be ableto distinguish finger-key contact and finger hover, thus enablingdetermination of the respective positions of a user's fingers, hands,wrists and potentially forearms when the keyboard is being used. In anembodiment, the keyboard data is used to reconstruct the position andorientation of the user's fingers, hands, wrists, forearms, andpotentially, the keyboard (including changes to the keyboard such as theaddition of key-top or side labels, or e.g., tool tips) in a VR/ARsetting. Such reconstruction allows the user to “see” his or herfingers, hands, wrists and possibly forearms relative to the keyboardVR/AR settings, making the use of a keyboard possible in VR/AR settings.

Turning first to FIGS. 1A-1D, an illustrative embodiment of a keyboardswitch 110 is shown. In an embodiment, key base 100 supports the otherelements of the keyboard switch 110. In an embodiment, key cover 101 isprovided in movable relation to the key base 100. In an embodiment, keycover 101 is only partially movable with respect to the key base 100. Inan embodiment, a biasing means (not shown) urges key cover 101 to itsextended position when at rest, and as is apparent to those of skill inthe art, key cover 101 moves in a direction roughly normal to its uppersurface.

In an embodiment, two antennae 102, 103 are associated with the keyboardswitch 110, one of the two antennae being a receive antenna 103, and theother being a transmit antenna 102. The designation of transmit orreceive is arbitrary, except that in an embodiment, at least one of eachis associated with the keyboard switch. The two antennae 102, 103 arespaced apart from one another such that no portion of transmit antenna102 touches any portion of receive antenna 103. In an embodiment,keyboard switch 110 shares its antennae 102, 103 with one or more otherkeys. In an embodiment, keyboard switch 110 comprises one uniqueantenna, and shares its other antenna with one or more other keys. Aswill be discussed more fully below, keyboard switch 110 may be a solekeyboard switch, or more commonly, may be used with a plurality of otherkeyboard switches in a keyboard.

In an embodiment, one antenna is a transmit antenna 102 and the otherantenna is a receive antenna 103. In an embodiment, a keyboard switch110 may have one or more additional transmit antennae (not shown). In anembodiment, a keyboard switch 110 may have one or more additionalreceive antennae (not shown). Each of the antennae associated with anykeyboard switch 110 is spaced apart from each other antennae such thatno portion of any of the antennae touches any portion of any otherantennae.

Although shown in an exemplary embodiment on the front and back sides ofthe key base 100, the antennae may be placed as will best suit theintended application. For example, in varying embodiments,

-   -   1) a transmit antenna is placed on one side of the key, and a        receive antennae on the other side;    -   2) a transmit antenna is placed within the key base, and a        receive antenna rings around the key base;    -   3) transmit antennae are placed on each side of the key base,        and a receive antenna is placed in the center of the key base;    -   4) receive antennae are placed on each side of the key base, and        a transmit antenna is placed in the center of the key base; or    -   5) transmit antennae are placed on each side of the key base,        and receive antennae are placed on the front and rear of the key        base.        Many other configurations will be apparent to a person of skill        in the art in view of this disclosure, and can be made without        departing from the spirit and scope of the inventions claimed        herein.

In an embodiment, the antennae 102, 103 are fixed, and do not moverelative to one another when the key cover 101 is moved or depressed. Inan embodiment, at least one of antennae 102, 103 can move relative tothe other. In an embodiment, at least one of antennae 102, 103 movesrelative to the other when key cover 101 is moved or depressed. Movement(or lack of movement) of the antennae may result in a differing responseto the key press than where the antennae are stationary. As will beappreciated by a person of skill in the art, where the pressure or levelof key press requires substantial granularity—that is, a very sensitivemeasure of how much the key cover 101 is pressed—it may be desirable tohave at least one of the antenna 102, 103 move as a result of that keycover 101 press. One or more antennae moving in response to the movementof the key cover 101 is also desirable where the object pressing the keyhas limited capacitive implication (e.g., typing using long fingernails,typing with gloves on, typing with a pencil or other object, typingunderwater, etc.).

In an embodiment, a transmit antennae 102 is associated with a signalemitter (not shown). In an embodiment, the antennae 102, 103 form atouch sensor when a signal is transmitted onto the transmit antenna 102and a receiver (not shown) receives the signals present on a receiveantenna 103. In an embodiment, a signal processor (not shown) is used todetermine an amount, and/or changes in the amount, of the signaltransmitted onto the transmit antenna 102 that is present in the signalson the receive antenna 103. In an embodiment, the transmit antenna 102and receive antenna 103 are designed so that, when they are not subjectto a touch event, one amount of signal is coupled between them, whereas,when they are subject to a touch event, another amount of signal iscoupled between them. Moreover, in an embodiment, the transmit antenna102 and receive antenna 103 are designed so that the amount of signalcoupled between them varies with the various touch events, from thefarthest hover, through key contact, and all the way to a fullydepressed key. In an embodiment, the variation in signal from thefarthest hover to a fully depressed key comprises a range of detectabletouch states, which may comprise at least three touch states (i.e.,hover, contact and depressed) in addition to an untouched state. In anembodiment, the variation in signal representing the hover touch statecomprise a plurality of discrete levels. In an embodiment, the variationin signal representing the contact touch state comprise a plurality ofdiscrete levels. In an embodiment, the variation in signal from thefarthest hover to a fully depressed key comprises a range of detectabletouch states, which comprises at least 255 or more touch states inaddition to an untouched state. As discussed above, because the touchsensor ultimately detects touch due to a change in the coupling, it isnot of specific importance, except for reasons that may otherwise beapparent to a particular embodiment, whether the touch-related couplingcauses an increase in the amount of signal present on the receiveantenna 103 or a decrease in the amount of signal present on the receiveantenna 103.

To identify touch, the receiver receives signals present on the receiveantenna 103 and a signal processor analyzes the received signal todetermine the amount of the coupled transmitted signal. In anembodiment, the identification can be supported with a frequencyanalysis technique (e.g., Fourier transform), or by using a filter bank.In an embodiment, the receiver receives a frame of signals, which frameis processed through an FFT, and thus, a measure is determined for atleast the transmitted frequency. In an embodiment, the FFT provides anin-phase and quadrature measure for at least the transmit frequency, foreach frame.

In an embodiment, a signal emitter is conductively coupled to transmitantenna 102 for the keyboard switch 110. The signal emitter emits asource signal causing the transmit antenna 102 associated therewith totransmit the source signals. The source signal may be a combination ofe.g., other signals, thus, for example, while the source signal could bea simple sine wave (e.g., 5.01 Mhz), it is also within the scope of thisdisclosure that the source signal is a combination of two or more sinewaves. In an embodiment, more than one signal emitters may beconductively coupled to transmit antenna 102 for the keyboard switch110. Where more than one signal emitters are conductively coupled to atransmit antenna 102, the output of the more than one signal emittersprovide the signals transmitted by the transmit antenna 102. In anembodiment, transmission of multiple source signals may increasesensitivity. In an embodiment, transmission of multiple source signalsmay increase sensitivity further if high and low frequency signals arecombined. In an embodiment, the source signals are frequency-orthogonal.As previously used herein, frequency-orthogonal means that the sourcesignals are separable and distinguishable from each other. In anembodiment, the receiver is coupled to the receive antenna 103, andadapted to capture a frame of signals present on the coupled receiveantenna 103. Where another receive antenna (not shown) is associatedwith the keyboard switch 110, the additional receive antenna may sharethe same receiver (and thus, as would be apparent to one of skill in theart, could be considered different parts of the same antenna), oralternatively, may be conductively coupled to a separate receiver.

In an embodiment, multiple orthogonal signals are transmitted over thetransmit antenna 102. To identify touch in such embodiment, the receiverreceives signals present on the receive antenna 103 and a signalprocessor analyzes the received signals to determine an amountcorresponding to each of the orthogonal transmitted signal coupledbetween them. The identification can be supported with a frequencyanalysis technique (e.g., Fourier transform), or by using a filter bank.In an embodiment, the receiver receives a frame of signals, which frameis processed through an FFT, and thus, a measure is determined for eachtransmitted frequency. In an embodiment, the FFT provides an in-phaseand quadrature measure for each transmit frequency, for each frame.

In an embodiment, from the received signal, the receiver/signalprocessor can determine a value (and in an embodiment an in-phase andquadrature value) for each frequency, from a list of frequencies, foundin the signal received on that receive antenna 103. In an embodiment,where the value corresponding to a frequency is greater or lower thansome threshold, or changes from a prior value (or changes from a priorvalue by an amount greater than a threshold), that information may beused to identify a touch event at the keyboard switch 110. In anembodiment, the value information, which may correspond to variousphysical phenomena including the distance of the touch from the keyboardswitch 110, the size of the touch object, the pressure with which theobject is pressing on the keyboard switch, any fraction of key cover 101that is being touched, etc., may be used to identify the touch statefrom the range of detectable touch states. In an embodiment, changes inthe value information may be used to identify the touch state from therange of detectable touch states. In an embodiment, the determinedvalues are not self-determinative of touch state, but rather are furtherprocessed along with other values to determine touch states. In anembodiment, the determined values are further processed along withvalues from other keyboard switches proximate to the keyboard switch 110to determine the touch state of the keyboard switch 110.

In an embodiment, antennae 102, 103 associated with a keyboard switch110 are shaped similarly. In an embodiment, antennae 102, 103 associatedwith a keyboard switch 110 are shaped differently. The different shapedantennae 102, 103 produce different antennae patterns based on the shapeof the antennae 102, 103. As will be apparent to a person of skill inthe art in view of this disclosure, antennae 102, 103 associated with akeyboard switch 110 may be oriented in different spatial orientations toproduce differing antennae patterns. In an embodiment, each respectivetransmit and receive antennae 102, 103 is associated with a transmissionor reception layer, thereby resulting in a multi-layer construction ofthe keyboard switch 110.

In an embodiment, a signal processor is adapted to determine ameasurement from each frame corresponding to an amount of the sourcesignals present on the receive antenna 103. In an embodiment, the signalprocessor is further adapted to determine a keyboard switch touch statefrom the range of touch states, based at least in part on thecorresponding measurement.

The keyboard switch 110 may be a sole keyboard switch, or more commonly,may be used with a plurality of other keyboard switches in a keyboard(not shown). In an embodiment, a keyboard is composed of a collection ofkeyboard switches 110. In an embodiment, keyboard switches 110 areorganized into logical rows and logical columns such that each of theplurality of keyboard switches is associated with, and uniquelyidentified by, one row and one column. In an embodiment, keyboardswitches 110 may be organized into logical rows and logical columns suchthat each of the plurality of keyboard switches are associated with, anduniquely identified by, at least one row and one column.

In an embodiment, no two keyboard switches in a keyboard may share acommon row/column combination, thus, the keyboard can detect a measurethat is unique to a respective keyboard switch 110. In an embodiment,each keyboard switch 110 operates as a proximity sensor by transmittinga signal over an antenna 102 and receiving coupled signal on the anotherantenna 103. As discussed above, for each keyboard switch 110 a valueassociated with touch at that keyboard switch 110 may be derived fromthe amount, or a change in the amount, of the transmitted signal foundin the coupled signal. The value may be correlated with one of a rangeof touch states. In an embodiment, the range of touch states include nohover, hover, contact, and pressed or depressed. In an embodiment, “nohover” means there is no detection of the user's fingers, hand, orforearm in the vicinity of the keyboard switch 110. As used here,generally, “hover” refers to a touch state corresponding to detectablelocation of a capacitive object (e.g., user's fingers, hands, forearm orstylus) from the limit of detection of the keyboard switch through butnot including include actual contact with the keyboard switch orkeyboard. As used here, generally, “contact” refers to a touch statecorresponding to a detectable contact between the keyboard switch orkeyboard and the capacitive object, all the way through being pressed.Being pressed, or depressed corresponds with the traditional notion of akey being closed, e.g., when a corresponding character would be put onthe screen. As used here, however, “depressed” or “pressed” refers to atouch state corresponding to the detection of a fully depressed key, andmay also include various additional states corresponding to the pressureon the key after being fully depressed. In an embodiment, the touchstates may use an ordinal scale, e.g., from 0 to 255, with zerocorresponding to a no touch state, a first range, e.g., 1 to 127corresponding to various hover states, a second range, e.g., 128-197corresponding to various contact states, and a third range, e.g.,198-255 corresponding to a range of pressed states. In an embodiment,the range of touch states comprises at least four states. In anembodiment, the range of touch states comprises at least 6 states, withat least two substrates corresponding to hover and contact. In anembodiment, the range of touch states comprises at least 256 states,with at least three substrates corresponding to hover, contact andpressed. In an embodiment, the range of touch states comprises at least1024 states. As will be apparent to a person of skill in the art in viewof this disclosure, the number of touch states and association betweenthose states and any substrates are design choices and should beselected to provide the desired granularity for the keyboard switch.Moreover, it is not necessary for substrates to have equal granularitywith other substrates. For example, in an embodiment, it may bedesirable (as discussed in more detail in connection with FIG. 4), tohave more granularity on the contact states or on the division betweenthe hover state and the contact state. Similarly, in an embodiment, itmay be more desirable to have additional granularity on hover states orpressed states.

In an embodiment, using these states, the keyboard switches 110 on thekeyboard can provide granular, multi-level information relative touser's fingers on (and potentially between) the respective keyboardswitches 110. For example, in an embodiment, as the key cover 101 isdepressed, the keyboard may detect a change in the surface area of thekey in contact with the finger. Further, in an embodiment, as the key isdepressed the key cover 101 is closer to the conductor, and thus, boththe change in the surface area and the proximity of the capacitiveobject to the conductor may result in capacitive change, which providesinformation relative to the user's finger on the keyboard switches.

FIGS. 2A and 2B show antennae layers for an embodiment of an exemplarytypical keyboard. FIG. 2A shows an exemplary illustration ofconductively coupled columns (shown horizontally) of a plurality oftransmit antennae 220. (The designation of rows and columns beingarbitrary.) Transmit traces 225 are traced along the transmit layer 210connect groups of transmit antennae 220 together, and bundle together atbundle 235. FIG. 2B shows an exemplary illustration of a plurality ofreceive antennae 200 organized into conductively coupled rows (shownvertically). Receive traces 205 are traced along the receive layer 230,to a bundle 215. Antenna layers 250, 260 are separated and stacked in akeyboard (not shown) having a plurality of key bases (not shown), eachof the bases having a key cover (not shown). In an embodiment, theantennae 220, 200 form the transmit antenna 102 and receive antenna 103(see, e.g., FIG. 1B) of each keyboard switch (not shown).

In an embodiment, a signal emitter (not shown) is conductively coupledwith each transmit trace 225, and via the emitters, a plurality ofsignals are transmitted over each of the transmit antenna 220 rows,respectively. In an embodiment, each of the plurality of signals isorthogonal to each of the other plurality of signals. In an embodiment,the plurality of signals are simultaneously transmitted over each of thetransmit antenna 102.

A receiver (not shown) is conductively coupled with each of the receivetraces 205. The receiver and/or a signal processor (not shown)associated therewith is adapted to receive frames of signals present onthe receive traces 205 (i.e., coming from the receive antennae 200) andfrom the frame, to determine a value for each of the plurality ofsignals transmitted over each of the transmit antenna 102. In anembodiment, each value is correlated with one of a range of touchstates, and all of the values together, producing a keyboard state. Inan embodiment, each keyboard switch in the keyboard is associated withone of a range of touch states, and that association is computed basedat least in part on the value associated with that keyboard switch. Inan embodiment, the association is computed based, at least in part, onthe value associated with that keyboard switch, and the value associatedwith at least one neighboring keyboard switch.

Determination of value for each of the plurality of signals aretransmitted over each of the transmit antenna 102 can be supported witha frequency analysis technique (e.g., Fourier transform), or by using afilter bank. In an embodiment, the receiver receives a frame of signals,which frame is processed through an FFT, and thus, a measure isdetermined for each transmitted frequency. In an embodiment, the FFTprovides an in-phase and quadrature measure for each transmit frequency,for each frame.

While at least one of the plurality of signals sent via the transmittersare sent via each transmit antenna 102, in an embodiment, at least onetransmit antenna 102 simultaneously transmits a second one of theplurality of signals. In an embodiment, a plurality of orthogonalsignals are simultaneously transmitted such that at least two of theorthogonal signals are simultaneously transmitted over each transmitantenna 102. In an embodiment, simultaneous transmission of multiplesignals over a single transmit antenna may increase sensitivity. In anembodiment, frequency-distant orthogonal signals are simultaneouslytransmitted over a single transmit antenna 102.

Turning to FIGS. 3-6, several additional, exemplary embodiments of akeyboard switch are shown. As with the keyboard switch 110 shown in FIG.1, the keyboard switches shown in FIGS. 3-6 can be used alone or as partof a keypad or keyboard. While the keyboard switches disclosed in FIGS.3-6 can be used in many types of keyboards, they are particularly usefulin the design of non-traditional keyboards, e.g., thinner keyboards suchas “chicklet” (or island style) keyboards and membrane keyboards. Thekeyboard switches disclosed in FIGS. 3-5 are shown with a singletransmit antenna and a single receive antenna. Without departing fromthe spirit and scope of this disclosure, these keyboard switches canhave one or more additional transmit antennae and/or one or moreadditional receive antenna. For example, as discussed in more detailbelow, FIG. 6 shows an embodiment having two transmit antennae.

As with the previously discussed keyboard switch 110 illustrated in FIG.1, in an embodiment, the keyboard switches disclosed in FIGS. 3-5 eachtransmit a single frequency over its transmit antenna. Also as with thepreviously discussed keyboard switch illustrated in FIG. 1, in anembodiment, the keyboard switches disclosed in FIGS. 3-5 each transmit aplurality of orthogonal signals over its transmit antenna. The keyboardswitch illustrated in FIG. 6 having two transmit antennae, may similarlybe used with a single transmit frequency, or with multiple,simultaneous, orthogonal transmit frequencies.

FIG. 3A shows an illustrative orientation of antennae components 310 ofa keyboard switch comprising a transmit antenna 300 and transmit trace301 conductively coupled thereto, as well as receive antenna 302 andreceive trace 303 conductively coupled thereto. As will be understood bya person of skill in the art, the designation of transmit and receivehere are arbitrary, and the transmit antenna 300 could be used toreceive, while the receive antenna 302 could be used to transmit; thesearbitrary designations are merely a convenience for illustrativepurposes. In an embodiment, a signal emitter (not shown) emits one ormore signals for transmission on the transmit antenna 300 via thetransmit trace 301, and a receiver (not shown) receives a frame ofsignal present on the receive antenna 302 via the receive trace 303. Asignal processor (not shown) analyzes the frame to determine a valuecorresponding to an amount of the one or more signals transmitted on thetransmit antenna 300. The value (or a change in the value) may becorrelated with one of a range of touch states. FIG. 3B shows aschematic view of a keyboard switch 311 using the illustrativeorientation of antennae components 310 in FIG. 3A. Keyboard switch 311comprises a key cover 305 that covers the antennae components 310. In anembodiment, a user can interact with the key cover 305 as the key of akeyboard. In an embodiment, key cover 305 has a biasing means (notshown), such as a spring, that biases it towards a home position awayfrom antennae components 310. In an embodiment, key cover 305 is madefrom a deformable memory material that itself will return to a homeshape away from antennae components 310.

As discussed in detail above, in an embodiment, a capacitive object,including, e.g., a user's hand or finger, or a stylus, is detected by atouch detector formed using the antennae 300, 302, and one of a range oftouch states may thereby be associated with the keyboard switch 311.Also as discussed above, in an embodiment, the keyboard switch 311 issuitable for use in a keyboard. In an embodiment, rows and columns areassociated with each of a matrix of keyboard switches. In an embodiment,the touch state of the key may be determined, at least in part, based oninformation detected by the touch detector formed using the antennae300, 302, or changes in that information. In an embodiment, the touchstate of the keyboard switch may be determined, at least in part, basedon information detected (or changes in information detected) by theantennae of another proximate keyboard switch.

FIG. 4A shows an illustrative orientation of antennae components 410 ofa keyboard switch having a transmit antenna 300 and transmit trace 301conductively coupled thereto, as well as receive antenna 302 and receivetrace 303 conductively coupled thereto. Conductive substrate 404 is alsoshown. As above, the designation of transmit and receive are arbitrary.In an embodiment, a signal emitter (not shown) emits one or more signalsfor transmission on the transmit antenna 300 via the transmit trace 301,and a receiver (not shown) receives a frame of signal present on thereceive antenna 302 via the receive trace 303. A signal processor (notshown) analyzes the frame to determine a value corresponding to anamount of the one or more signals transmitted on the transmit antenna300. The value (or a change in value) may be correlated with one of arange of touch states.

Turning now to FIG. 4B a schematic view of a keyboard switch 411 usingthe illustrative orientation of antennae components 410 in FIG. 4A.Keyboard switch 411 comprises a key cover 405 that covers the antennaecomponents 410. In an embodiment, key cover 405 has a biasing means (notshown) that biases it towards a home position when it is not beingcontacted. In an embodiment, the biasing means may be a spring. In anembodiment, the biasing means may comprise a flexible deformable keycover. A conductive substrate 404 is positioned at the underside of thekey cover 405. In an embodiment, the conductive substrate 404 is adaptedto move in unison with at least a portion of the upper surface of thekey cover 405. In an embodiment, the conductive substrate 404 may act tomagnify the capacitive effect of a capacitive object brought intocontact therewith. In an embodiment, the conductive substrate 404 causesa more measurable response from the touch detector in the transitionbetween the touch states of hover and contact. In an embodiment, theconductive substrate 404 may be used to enhance the measurable range oftouch states when a capacitive object is in contact with the key cover405, thus, improving the granularity of the measurable states in thetouch sensor. In an embodiment, the conductive substrate 404 is a solidconductive material. In an embodiment, the conductive substrate 404 isconductive mesh material. In an embodiment, conductive properties ofconductive substrate 404 differ from the conductive properties of keycover 405. In an embodiment, conductive substrate 404 is affixed to keycover 405 using a gluing process. In an embodiment, the conductivesubstrate 404 is affixed to key cover 405 so that a conductive portionof the conductive substrate 404 protrudes through key cover 405 and maybe contacted directly by a capacitive object. In an embodiment,conductive substrate 404 and key cover 405 are formed from the samematerial, conductive substrate 404 having a greater thickness than theupper portion of key cover 405. In an embodiment, conductive substrate404 and key cover 405 are molded as a single object. Keyboard switch 411can be used in the same manner as keyboard switch 311, however, theaddition of the capacitive substrate 404 may enhance the detection ofcontact, and may provide better measurable granularity among contacttouch states.

Turning now to FIG. 5 another embodiment of a keyboard switch 511 isshown in a schematic cutaway view. Keyboard switch 511 comprises manycommon components with keyboard switch 411 (FIG. 4B), including transmitantenna 300, transmit trace 301, receive antenna 302, receive trace 303,as well as key cover 405 and conductive substrate 404. Keyboard switch511 is also operated similarly to keyboard switch 411 using a signalemitter (not shown) and receiver (not shown). Keyboard switch 511further comprises a conductive coupling 506 between conductive substrate404 and transmit antenna 300. In an embodiment, the conductive couplingmay form the biasing means, such as a spring (e.g., a coil spring or aleaf spring), that urges key cover 405 to a home position. Theconductive coupling 506 between conductive substrate 404 and transmitantenna 300 causes conductive substrate 404 to operate as a furtherantenna for transmission of transmit signals. In an embodiment, transmitantenna 300, conductive substrate 404 and conductive coupling 506,together, form a single, moveable antenna that can be used to transmitthe transmit signals (or receive the signals if attached to a receiver).

FIG. 6 shows a schematic cutaway view of an embodiment of yet anotherkeyboard switch 611, this one having two transmit antennae (or tworeceive antennae). Keyboard switch 611 comprises many common componentswith keyboard switch 411 (FIG. 4B), including transmit antenna 300,transmit trace 301, receive antenna 302, receive trace 303, as well askey cover 405 and conductive substrate 404. To the extent of its commoncomponents, keyboard switch 611 is operated similarly to keyboard switch411 using a signal emitter (not shown) and receiver (not shown).Keyboard switch 611 further comprises a conductive lead 606 conductivelycoupled to conductive substrate 404. A further signal emitter (notshown) is conductively coupled to the conductive lead 606. The furthersignal emitter emits one or more further signals for transmission on theconductive substrate 404. In an embodiment, the one or more furthersignals are orthogonal to the one or more signals transmitted on thetransmit antenna 300. The signal processor (not shown) also analyzes theframe of signals received by receiver, to determine a further valuecorresponding to an amount of the one or more further signalstransmitted on the conductive substrate 404. In an embodiment, thefurther value (or a change in the further value) may be correlated withone of a range of touch states. In an embodiment, the value(corresponding to the one or more signals) and the further value(corresponding to the one or more further signals) are both used as abasis for identification of a touch state associated with the keyboardswitch. As in other embodiments, the values (and further values) fromneighboring or proximate keys may additionally be used as at least partof the basis for identifying a touch state associated with the keyboardswitch. Without departing from the spirit and scope of this disclosure,instead of having two transmit antennae and one receive antenna, thekeyboard switch 611 can have two receive antennae and one transmitantenna.

In an embodiment, the range of touch states provided by the variouskeyboard switches in a keyboard can be used to model a capacitive objectand its position and orientation with respect to the keyboard. In anembodiment, such modeling can be used to provide visual feedback,including a visual 3-D model of the capacitive object, in a VR/ARsetting. For example, an overlay of 2-D and 3-D “holographic” visualfeedback in VR/AR settings can be based on the real-world positions ofthe user's fingers, hands, wrists and forearms on or in proximity to aphysical keyboard made of touch detecting keyboard switches. Further,because the keyboard can make fine measurements of the location ofcapacitive objects relative to a keyboard, the touch measurements can beused to recreate the location and orientation of fingers, hands andpossibly other parts including wrists and/or forearms because there area limited number of ways in which a hand and forearm can move relativeto the fingers—e.g., finite ranges and degrees of freedom.

Turning now to FIGS. 7 and 8 which show an illustrative example ofcomputer-generated touch state information displayed above a depictionof a touch sensitive keyboard according to the present disclosure. Theinset pictures 700, 800 in FIGS. 7 and 8 show the position of hands 701,801 with respect to an exemplary physical keyboard 702, 802. Both heightabove the keyboard illustration and color 703, 803 are used to for thepurposes of the touch state illustration. The heights and colors shownare merely illustrative. As illustrated in FIGS. 7 and 8, an embodimentof the physical keyboard 702, 802 disclosed herein may be used toprovide information concerning the touch state of each keyboard switch,which, as illustrated, can provide a visual display 704, 804 of hover,key contact and key depress. Specifically, FIG. 7 shows an exemplarykeyboard 702 according to the disclosure, with a user's hands 701positioned in proximity thereto and an illustration of that keyboard 705with a computer-generated heat map 703 superimposed thereon. Thecomputer-generated heat map 703 corresponds to the touch states of thevarious keyboard switches, and thus, is intended to correspond to thepositioning and proximity of the user's hands with the exemplarykeyboard 702. FIG. 8 shows another view of the exemplary keyboard 802with the user's hands 801 repositioned from FIG. 7, and an illustrationof that keyboard 805 having a computer-generated heat map 803superimposed thereon.

In an embodiment, a reconstruction of the hover, contact and pressureinformation may be configured to display as a 3-D model, allowing a userto see his or her fingers, and potentially hands, wrists and/or forearmsrelative to the keyboard in a VR/AR view. In an embodiment, the range oftouch states corresponding to hover extend at least 5 mm from thesurface of the keyboard switches. In an embodiment, the range of touchstates corresponding to hover extend at least 10 mm from the surface ofthe keyboard switches. In an embodiment, the range of touch statescorresponding to hover extend substantially more than 10 mm from thesurface of the keyboard switches.

In an embodiment, on-the-fly tuning may be done to permit extended hoverwhile maintaining a contact-sensitive keyboard. In an embodiment,different orthogonal signals are used in a non-hover state, and hoverstate from the signals used in the range of contact states; or in afar-hover state versus a near-hover state. In an embodiment, differentphysical antennae are used to transmit and receive signals in anon-hover state, and hover state from the antennae used in the range ofcontact states; or in a far-hover state versus a near-hover state.

U.S. patent application Ser. No. 15/162,240, filed May 23, 2016,entitled “Transmitting and Receiving System and Method for BidirectionalOrthogonal Signaling Sensors,” the entire disclosure of which isincorporated herein by reference, provides user, hand and objectdiscrimination in a fast multi-touch sensor. In an embodiment,bidirectional orthogonal signaling is used in connection with a touchsensitive keyboard to provide the benefits as explained in thatapplication. Where bidirectional orthogonal signaling is used, each ofthe antennae may be used as both receive and transmit antennae.

The entire disclosure of U.S. patent application Ser. No. 14/466,624,filed Aug. 22, 2014, entitled “Orthogonal Signaling Touch User, Hand andObject Discrimination Systems and Methods,” is incorporated herein byreference. In an embodiment, the keyboard or keyboard switch disclosedherein can distinguish between the hands and fingers of multiple users,different hands of the same user, different fingers of the same user,and hands and objects.

FIG. 9 shows a hybrid view partially representing a user's VR/AR viewand partially representing a real-world view of a featured keyboard. InVR/AR settings, in an embodiment, each interactive key on the keyboardcan become an independent, interactive touch display. Allowing thekeyboard to adapt more flexibility to software defined or related tasks,and providing dynamic visual feedback to the user while using thekeyboard. In an embodiment, 3-D modeling can be employed using the touchstate information from the disclosed touch sensitive keyboard to providea user with a view of his or her fingers, hands, wrists, forearms, andeven the keyboard in VR/AR settings.

The entire disclosure of U.S. patent application Ser. No. 14/490,363,filed Sep. 18, 2014, entitled “Systems and Methods for ProvidingResponse to User Input Using Information about State Changes andPredicting Future User Input,” is incorporated herein by reference. Inan embodiment, the touch state information may be used in connectionwith prediction of user's actions, and such predictions can be used tomitigate or eliminate latency.

FIG. 10 shows a hybrid view partially representing a user's VR/AR viewand partially representing a real-world view of a feature-sparsekeyboard. As used herein, the term feature-sparse keyboard includessurfaces without specific physical keys having a generally fixedkey-spacing. For example, an iPad or mobile phone keyboard can beconsidered a feature-sparse keyboard. However, the term feature-sparsekeyboard also includes keyboards that include some physical features,and may include haptic feedback to present keys or other features of akeyboard. Such haptics may include, without limitation, movingmechanical parts, robotic graphics, electrostatic feedback and/orelectroshock feedback. In VR/AR settings, in an embodiment,feature-sparse and/or haptic keyboard can become an independent,interactive touch display. In VR/AR settings, through techniques knownin the art, a feature-sparse haptic keyboard may tactually seem to havekeys and may provide dynamic physical feedback to the user while usingthe keyboard in this setting. In VR/AR settings, through techniquesknown in the art, the feature-sparse and/or haptic keyboard may visuallyappear to have keys and/or labels and may provide dynamic physicalfeedback to the user while using the keyboard in this setting. Thus,even though the user sees limited features or no features at all in areal-world setting, key outlines and labels can be added in the VR/ARsetting.

FIGS. 11 and 12A-C depict several embodiments that can be used with themethods and apparatus disclosed herein. FIG. 11 illustrates an exemplaryembodiment of a keyboard 1100 having physical features 1101 in thereal-world setting. In an embodiment, and as described above, thekeyboard may be a feature-sparse and/or haptic keyboard used in a VR/ARsetting. FIG. 12A shows an example of the touch sensor range 1201 of afeatured keyboard 1200 being used. While the sensor range 1201 isdepicted, that depiction is just for illustrative purposes. In anembodiment, the keyboard 1200 may be a feature-sparse and/or haptickeyboard used in a VR/AR setting. In an embodiment, the sensor range1201 of the touch sensor corresponds to the touch sensitivity of thekeyboard switches on the keyboard 1200. FIG. 12B shows an example of aheat map 1203 of information within touch sensor range of the user'sfingers and hands, and the extrapolation from the heat map 1203 of theuser's wrists 1204.

FIG. 12C shows an embodiment of a VR/AR world view of the same user'sfingers, hands and wrists and a visual context as may be reconstructedfor use in connection with keyboard in a VR/AR setting. In anembodiment, the touch state information can be used to reconstruct theuser's fingers, hands and wrists in 3-D in VR/AR settings with lowlatency. The low latency may permit an VR/AR system to provide 3-Dhaptics, thus, providing the user with physical buttons and controllerson a real-world keyboard that mirrors software defined buttons andcontrols of a VR/AR keyboard. For example, in an embodiment, 3-D hapticsmay create physical input surfaces that can flexibly deform theirphysical controls to match the VR/AR digital controls of a given VR/ARapplication. In an embodiment, haptics may cause a user to perceivephysical input surfaces to match the VR/AR digital controls of a givenVR/AR application. In an embodiment, physical or haptic interfaces areprovided that can be fit to their intended use and that mirror theirdigital equivalents in VR/AR settings.

Because contact is not required, in an embodiment, touch stateinformation may be used as an input to a gesture interpretationalgorithm. Thus, a location at a distance above the keyboard could beturned into a zone where a user could gesture. Such a zone may be modal,and itself activated by a gesture, contact or key press or combinationof gestures, contact or key presses. In an embodiment, the hand can beused as a computer mouse, making the familiar movements without removalof the hand from proximity with the keyboard. In an embodiment,“cupping” the hand into a mouse-like shape will automatically causefurther gestures from that hand to be interpreted as mousegestures—including, e.g., button clicks, wheel rotation and movement. Inan embodiment, a tapping motion in the air can be interpreted as agesture, and may result in a system response. In an embodiment, thesurface of a key or a subset of keys could act as a track pad when theuser skims or makes some other type of gesture with his or her fingersor hand on them.

The touch state information provided by the novel keyboard switches andkeyboard presented herein allows application and operating systemsoftware to have information from which resting on, or hovering over aphysical key (or VR/AR key) can be identified. Turning to FIG. 13, anexemplary implementation of tool-tipping is shown. FIG. 13 provides anexemplary illustration of a hybrid view of a user's view and real-worldview of the keyboard offering the user a floating tool-tip to, forexample, assist in learning keyboard shortcuts for a given applicationor operating system since the keyboard can either sense a user restingon or hovering above the keys or predict the user's next key press(es)before the user makes contact with the keys. In an embodiment, the touchstate information is used to determine particular positions orcombinations of positions where a tool-tip or other feedback isdesirable, and such tool-tip or other feedback can be presented in theVR/AR representation. Similarly, additional display space may bedesirable in the form of a balloon, such that, for example, where a userhovers over or contacts a keyboard switch (or combination) a balloon maybe displayed, such as, the “next song” that may play if a “next” key ispressed. In an illustrative embodiment, the disclosed keyboard enables aVR/AR user interface mapped to a physical input surface, which includesbut is not limited to a keyboard. In doing so, each key on the keyboardcan be a multi-touch, gestural display since each key on the physicalkeyboard can become a visual screen in a VR/AR setting. For example, theVR/AR user interface elements can be mapped to physical keyboard inputcontrols as interactive 2-D icons, images and text (e.g., a volumebutton control that shows the current volume-level, etc.) and even as3-D icons, images and text (e.g., a play button that appears when theuser rests his or her finger on the associated physical key therebycreating a 3-D tool-tip along the z-axis that shows the user what albumwill be played via the display of album-art imagery, etc.).

The present systems are described above with reference to devices forkeyboards sensitive to hover, contact and pressure in frequency divisionmodulated touch systems. It is understood that each operationalillustration may be implemented by means of analog or digital hardwareand computer program instructions. Computer program instructions may beprovided to a processor of a general purpose computer, special purposecomputer, ASIC, or other programmable data processing apparatus, suchthat the instructions, which execute via a processor of a computer orother programmable data processing apparatus, implements thefunctions/acts specified. Except as expressly limited by the discussionabove, in some alternate implementations, the functions/acts may occurout of the order noted in the operational illustrations.

While the invention has been particularly shown and described withreference to a preferred embodiment thereof, it will be understood bythose skilled in the art that various changes in form and details may bemade therein without departing from the spirit and scope of theinvention.

The invention claimed is:
 1. A keyboard, comprising: plurality ofkeyboard switches for detecting touch, each keyboard switch comprising:key base; key cover, the key cover being at least partially movable withrespect to the key base; a transmit antenna and a receive antenna, thetransmit and receive antennas being configured such that no portion ofthe transmit antenna touches any portion of the receive antenna, whereinat least one of the transmit and receive antennas is directlymechanically coupled to the key cover to be movable with respect to theother; wherein the transmit antenna is adapted to be used to transmitone or more source signals; and wherein the receive antenna is adaptedto be used to capture a frame of signals.
 2. The keyboard of claim 1,wherein each of the one or more source signals are frequency-orthogonalwith each other of the one or more source signals.
 3. The keyboard ofclaim 1, wherein the range of touch states is a range of at least fourstates.
 4. The keyboard of claim 1, wherein at least one of the range oftouch states corresponds to a hover state.
 5. The keyboard of claim 1,wherein at least one of the range of touch states corresponds to a nohover state.
 6. The keyboard of claim 1, wherein the range of touchstates is a range of at least 256 different states.
 7. The keyboard ofclaim 1, wherein a plurality of the range of touch states corresponds toa hover state.
 8. The keyboard of claim 1, wherein a plurality of therange of touch states corresponds to contacted state.
 9. The keyboard ofclaim 1, further comprising: further transmit antenna associated with atleast one of the plurality of keyboard switches, the further transmitantenna being positioned such that no portion thereof touches anyportion of the transmit antenna or the receive antenna for the at leastone of the plurality of keyboard switches; wherein the further transmitantenna is adapted to transmit one or more additional signals, the oneor more additional signals being frequency-orthogonal with each of theone or more source signals.
 10. The keyboard of claim 1, furthercomprising: further receive antenna associated with one of the pluralityof keyboard switches; wherein the further receive antenna is adapted tocapture a frame of signals; the further receive antenna being positionedsuch that no portion thereof touches any portion of the transmit antennaor the receive antenna associated with the one of the plurality ofkeyboard switches.
 11. A keyboard switch for detecting touch, thekeyboard switch comprising: key base; key cover, the key cover beingmovable with respect to the key base, wherein the key cover comprises aconductive substrate to magnify capacitive effect; transmit antenna anda receive antenna, the transmit and receive antennas being configuredsuch that no portion of the transmit antenna touches any portion of thereceive antenna, wherein at least one of the transmit and receiveantennas is directly mechanically coupled to the key cover to bemoveable with respect to the other; wherein the transmit antenna isadapted to be used to transmit one or more source signals; and whereinthe receive antenna is adapted to be used to capture a frame of signals.12. The keyboard switch of claim 11, wherein: the transmit antenna isadapted to transmit an additional signal simultaneously with the sourcesignal, the additional source signal and the source signal beingorthogonal to each other.
 13. The keyboard switch of claim 11, whereinthe additional source signal and the source signal are frequencyorthogonal to each other.
 14. The keyboard switch of claim 11, furthercomprising: second transmit antenna associated with the keyboard switch,the second transmit antenna being spaced apart from the transmit antennaand the receive antenna such that no portion of the second transmitantenna touches any portion of the transmit antenna or the receiveantenna; wherein the second transmit antenna is adapted to cause thesecond transmit antenna to transmit an additional source signal, whereinthe additional source signal is orthogonal to the source signal.
 15. Thekeyboard of claim 11, wherein only a portion of the key cover ismoveable with respect to the key base.
 16. The keyboard switch of claim11, further comprising: second receive antenna associated with thekeyboard switch, the second receive antenna being spaced apart from thetransmit antenna and the receive antenna such that no portion of thesecond receive antenna touches any portion of the transmit antenna orthe receive antenna; and second signal receiver coupled to the secondreceive antenna, the second signal receiver adapted to capture a secondframe of signals present on the second receive antenna.
 17. The keyboardswitch of claim 16, wherein the key cover comprises a conductivesubstrate to magnify capacitive effect.